我正在使用Loopback4来创建某种博客API。我的帖子模型将包含一张图片(将来可能还会有几张)。
我想做的是->创建新帖子时上传图片。
我已经阅读了很多有关此的文章,但是由于我是nodejs和loopback4的新手,所以在使其工作方面有些麻烦。
我已经按照此处Loopback 4: Upload multipart/form-data via POST method的答案进行操作,我遇到了一些问题。
首先:我正在使用MySQL。有什么方法可以将图像保存在数据库中?还是不是一个好习惯?解决方法是上传图像,然后仅将图像位置保存在数据库中。
第二:在遵循了教程并结束了所创建的代码之后,我提出了一个新的post
请求,以进行测试。看起来像这样。
@post('/posts/upload', {
responses: {
'200': {
description: 'Post model instance',
content: { 'application/json': { schema: { type: 'object' } } },
},
},
})
async uploadFile(@requestBody({
description: 'multipart/form-data value.',
required: true,
content: {
[FORM_DATA]: {
schema: { 'media-type': Post },
},
},
})
body: unknown,
) {
return body;
}
这会在Swagger中创建我的post
请求,但它显示得像一个大输入框(文本输入)。据我所知,昂首阔步支持上传按钮。 content-type
错误吗?我如何测试我的上传功能?我在NetCore2中做了类似的操作,并且不得不将图像转换为字节(如果我没记错的话),这里是否存在相同的问题?
有什么提示吗?谢谢!