邮递员将 header 添加到上传的文件

postman add header to uploaded file

当我尝试使用 Postman 将文件上传到 Backblaze B2(存储提供商)时,header 和页脚被添加到所有文件并且似乎已损坏并且不能被打开

----------------------------114434797603440341474406
Content-Disposition: form-data; name="package.json"; filename="package.json"
Content-Type: application/json

file content

----------------------------114434797603440341474406--

只有当我使用 form-data 上传文件时才会发生这种情况,当我在 Postman 中使用二进制方法时它工作正常

我的问题是:

这是我要发送的 C-url 请求

curl --location 
--request POST 'https://..........t0045' \
--header 'Authorization: 4_002..........' \
--header 'Content-Type: application/json' \
--header 'X-Bz-File-Name: package.json' \
--header 'X-Bz-Content-Sha1: do_not_verify' \
--form 'package.json=@"/path/to/file/package.json"'

依次回答您的问题:

  • 该页眉(和页脚)正在由 Postman 添加。当您告诉 Postman 使用表单数据时,您是在告诉它向数据添加页眉和页脚。
  • 上传到 Backblaze B2 时必须指定二进制文件(见下文)。
  • 是 - 您应该可以使用 FileReader.readAsBinaryString()

docs for b2_upload_file 说明您必须在 HTTP 消息正文中提供二进制文件数据:

The file to be uploaded is the message body and is not encoded in any way. It is not URL encoded. It is not MIME encoded.

cURL 应如下所示:

curl \
    -H 'Authorization: 4_002..........' \
    -H 'Content-Type: application/json' \
    -H 'X-Bz-File-Name: package.json' \
    -H 'X-Bz-Content-Sha1: do_not_verify' \
    --data-binary @"/path/to/file/package.json" \
    'https://..........t0045'