Loopback4-如何将文件上传到POSTS模型

时间:2018-12-25 17:55:20

标签: javascript node.js rest loopbackjs swagger-ui

我正在使用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中做了类似的操作,并且不得不将图像转换为字节(如果我没记错的话),这里是否存在相同的问题?

有什么提示吗?谢谢!

0 个答案:

没有答案