如何使用feathersjs上传图片?

时间:2017-11-08 08:28:13

标签: feathersjs

我有一个用户注册。我这样做:

 app.service('users').create(
   {
      email:  this.state.Username,
      Nom: this.state.Name,
      Image: "../image/p.png",
   })

我成功将用户添加到数据库中。现在,我想在“image”文件夹中上传图像,并将其路径保存在“Image”属性中。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

有一个tutorial given in FeathersJS's official documentation to upload a file。您可以按照本教程上传图像文件。

但是,您可以使用教程中显示的上传服务通过单独的请求上传您的图片文件,作为回复,您将收到保存在指定文件夹中的文件名。像这样:

{
   "id":"6454364d8facd7a88e627e9329ffc2b7a5c879dc838.jpeg",
   "uri": "the-same-uri-we-uploaded",
   "size": 1156
}

这里,“id”是文件名。

然后,您可以将此文件名附加到用户对象:

{
   email:  this.state.Username,
   Nom: this.state.Name,
   Image: "6454364d8facd7a88e627e9329ffc2b7a5c879dc838.jpeg",
}

并使用用户服务或您已用于保存用户的任何内容进行保存。

此外,如果您想在一个请求中执行此操作,请将文件和用户数据提交给用户服务,并在before hook调用上传服务,保存文件并将此数据附加到用户对象中,以便用户服务可以保存它。

另外,请记住将图像保存在公共/图像文件夹中,以便可以访问它们: your-domain.com/images/6454364d8facd7a88e627e9329ffc2b7a5c879dc838.jpeg 。< / p>