【发布时间】:2021-08-07 14:28:56
【问题描述】:
我正在尝试通过 PayPal API (https://developer.paypal.com/docs/api/customer-disputes/v1/) 的文档上传证据文件
但我收到错误 400 - INVALID_REQUEST, MISSING_OR_INVALID_REQUEST_BODY。
我不明白我做错了什么。这是生成表单数据的代码的一部分:
const str = {
evidences: [
{
evidence_type: "PROOF_OF_FULFILLMENT",
evidence_info: {
tracking_info: [
{
carrier_name: "FEDEX",
tracking_number: "122533485"
}
]
},
notes: "Test"
}
]
}
const data = JSON.stringify(str);
const formData = new FormData();
formData.append('input', data);
formData.append('type', "application/json");
formData.append('file1', fileBuffer, {
filename: "@maor.pdf"
});
这是请求的日志:
{
method: 'post',
headers: {
'Content-Type': 'multipart/related; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW',
Authorization: 'Bearer XXXXXXXXXXX'
},
body: FormData {
_overheadLength: 364,
_valueLength: 75083,
_valuesToMeasure: [],
writable: false,
readable: true,
dataSize: 0,
maxDataSize: 2097152,
pauseStreams: true,
_released: false,
_streams: [
'----------------------------736530077015435126960318\r\n' +
'Content-Disposition: form-data; name="input"\r\n' +
'\r\n',
'{"evidences":[{"evidence_type":"PROOF_OF_FULFILLMENT","evidence_info":{"tracking_info":[{"carrier_name":"FEDEX","tracking_number":"122533485"}]},"notes":"Test"}]}',
[Function: bound ],
'----------------------------736530077015435126960318\r\n' +
'Content-Disposition: form-data; name="type"\r\n' +
'\r\n',
'application/json',
[Function: bound ],
'----------------------------736530077015435126960318\r\n' +
'Content-Disposition: form-data; name="file1"; filename="@maor.pdf"\r\n' +
'Content-Type: application/pdf\r\n' +
'\r\n',
<Buffer 25 50 44 46 30 20 6f 62 6a 0a 3c 3c 2f 50 61 67 65 0a 2f 50 61 72 65 6e 74 20 31 20 30 20 52 0a 2f 4d 65 64 69 ... 74855 more bytes>,
[Function: bound ]
],
_currentStream: null,
_insideLoop: false,
_pendingNext: false,
_boundary: '--------------------------736530077015435126960318'
}
}
我做错了什么?
【问题讨论】:
标签: javascript node.js express paypal paypal-sandbox