当前位置: 首页 > 知识库问答 >
问题:

post上的空文件请求负载和表单数据的空文件名

鲜于宜修
2023-03-14

我有一个多部分表单,其中请求的第一部分是表单数据,第二部分是文件。请求的第一部分缺少一个文件名,第二部分有一个空的有效负载,二进制内容应该在其中显示。

A sample payload is as follows:
------WebKitFormBoundaryiCmJmbQ7e518oDt9
Content-Disposition: form-data; name="message"

{"category":"OTHER","subject":"Test","body":"testttt"}
------WebKitFormBoundaryiCmJmbQ7e518oDt9
Content-Disposition: form-data; name="test.pdf"; filename="test.pdf"
Content-Type: application/pdf


------WebKitFormBoundaryiCmJmbQ7e518oDt9-- 

第一个内容处置缺少文件名="消息"。我试着把它改成Blob,但是负载是空的。不管我怎么做,我都无法让文件显示在负载中。它应该显示类似于PDF的东西

我的ajax请求:

var data = new FormData();
data.append('message', JSON.stringify(message.attributes));
data.append(document.getElementById('fileInput').files[0].name,document.getElementById('fileInput').files[0]);
message.save({},{
    cache: false,
    contentType: false,
    processData: false,
    data: data
});

共有1个答案

顾高扬
2023-03-14

尝试:

message.save(null,{
    cache: false,
    contentType: false,
    processData: false,
    data: data
});

这里还有一个关于主干文件上传的问题。还有另一个解决方案。

 类似资料:
  • 我仍然对上传文件的不同方法感到困惑。后端服务器不在我的控制之下,但我可以使用Swagger page或Postman上传文件。这意味着服务器运行正常。但当我使用AngularJS进行上传时,它不起作用。 以下是使用Postman进行测试的方法。我只是在使用表单数据: 请注意,请求头的内容类型为多部分/表单数据。但是请求负载具有文件名和内容类型,即image/png。 这是我的代码: 参数只是图像数

  • 在将FreshDesk集成到我的产品中时,我被用附件API创建票证所困扰。我使用高级Rest客户端测试API。我已经看到了许多关于栈溢出本身的论坛和问题,但我仍然对任何关于上传文件的多部分形式数据POST请求的回答不满意。 我想知道Advanced Rest Client中所需的请求格式以及标题 到目前为止,这是我正在使用的请求,但我没有得到正确的响应:

  • 当我向azure功能发送请求时,我收到以下异常: 内部异常系统。系统上已处理NullReferenceException。运行时。例外服务。例外DispatchInfo。投掷:在AlidaDutilities。OnUnzipHttpTriggered d__0。MoveNext(AlidaDutilities,版本=1.0.0.0,区域性=neutral,PublicKeyToken=NullAl

  • 我试图发送一个帖子请求到一个php文件,该文件有帖子数据和文件上传,这里是我发送的内容,设置标题的代码,我有的php文件,以及我从php中得到的东西file:([图像文件内容]是我正在发送的图像文件二进制数据的占位符) 我的问题是_POST //我正在向服务器发送的数据: 对于我的标题,我有: php文件: php文件的结果:

  • 我有一个案例像在我的表格(前端),我可以填写个人数据(姓名,地址,DOB)然后我可以附上多个图像。 在我的spring boot控制器中: 我的模型包装: 更新的前端代码: 使用formdata更改了前端代码,然后在后端出现错误:

  • 代码如下: 这将向flask发送一个{“name”:“go”}JSON字典。Flask应该将语言名称追加到数组中,并在响应中返回完整的数组。现在,当我手动发送请求时,这就工作了,所以这不是Flask的错误。但是当我从iOS发送上述内容时,我在flask控制台中得到request.json==None。很明显,我送的是一具空尸体,但我不应该。你知道我哪里出了问题吗?