与模型相关的 strapi POST 文件到 /upload 失败

strapi POST file to /upload with relation to a model fails

使用以下 JSON 数据和足够的权限进行上传 POST 到 http://localhost:1337/upload

上传的文件与模型的现有实体相关'product'

{
 "files":"@/path/to/file/image1.png",
 "refId":"5bed7b1f7eb8792e4737dc3f",
 "ref":"product",
 "field":"image"
}

但是失败,strapi 错误日志中出现以下错误:

TypeError: Cannot destructure property refId of 'undefined' or 'null'.

并有 500 个 "Internal Server Error" 响应。

有什么帮助吗?

您必须发送一个 FormData

下面的示例是上传文件,您必须添加 ref 属性以使其与关系一起使用。

  <form method="post">
    <input type="file" name="files" id="files">
    <input type="submit" name="" value="Submit">
  </form>

  <script type="text/javascript">
    $('form').on('submit', function (e) {
      e.preventDefault();

      var data = new FormData();
      $.each($('#files')[0].files, function(i, file) {
        data.append('files', file);
      });

      $.ajax({
        url: '/upload',
        data: data,
        contentType: false,
        processData: false,
        method: 'POST',
        success: function(data){
          alert(data);
        }
      });
    });
  </script>