SailsJS文件上传,使用Android上传时Req.file为空



我在这里发帖是因为我正在使用 SailsJS 开发一个 API,当我想使用 android 应用程序客户端上传文件时,我遇到了问题。

Req.files/req.file('myfile') 为空。

这是我执行上传的来源:

//FileController.js
upload: function (req, res) {
  console.log("REQ ", req.file('image'));
  console.log(req.files.image.originalFilename);
  console.log(req.files.image.path);
  req.file('image').upload({ dirname: '../../assets/images/profile/'},function (err, uploadedFiles){
    if (err){
      return res.serverError({
        code   : 500,
        status : res.i18n('error'),
        notice : res.i18n('An error has occurred.'),
        object : { error:error }
      });
    } else{
      return res.ok({
              code   : 200,
              status : res.i18n('OK'),
              notice : res.i18n('Avatar uploaded.'),
              object : uploadedFiles
          })
    }
    
  });
 }

我使用 Sails v0.11.0

注意:我的安卓客户端应用程序与其他nodeJS应用程序配合得很好。

你有解决问题的想法吗?

谢谢。

如何将文件发送到服务器? 您应该发送值等于文件的参数"图像"({图像:您的文件})

上传文件时,html表单必须设置为多部分/表单数据。

例:

<!-- enctype="multipart/form-data" -->
<form id="uploadForm"
    enctype="multipart/form-data"
    action="/file/upload"
    method="post">
        <input type="file" name="uploadFile" />
        <input type="submit" value="submit"/>
</form>

最新更新