Javascript 使用Fetch后,当发送formData时,我仍然在react.js中获得多部分边界
在使用Axios、react.js和multipart/formdata时,我严重混淆了如何解决这个多部分边界。我已经坚持了两周试图解决这个问题,但我觉得我离解决这个问题越来越近了,但无论我尝试什么解决方案,它仍然坚持 我阅读并尝试了本主题中的一些解决方案: 这是我在Javascript 使用Fetch后,当发送formData时,我仍然在react.js中获得多部分边界,javascript,reactjs,multipartform-data,Javascript,Reactjs,Multipartform Data,在使用Axios、react.js和multipart/formdata时,我严重混淆了如何解决这个多部分边界。我已经坚持了两周试图解决这个问题,但我觉得我离解决这个问题越来越近了,但无论我尝试什么解决方案,它仍然坚持 我阅读并尝试了本主题中的一些解决方案: 这是我在orderAction.js中创建订单的函数: function createOrder(data) { return dispatch => { let apiEndpoint = 'order
orderAction.js
中创建订单的函数:
function createOrder(data) {
return dispatch => {
let apiEndpoint = 'order';
let payload = new FormData();
// payload.append('orderImage', data.orderImage);
// console.log("Cek Image : ", data.orderImage);
for (const file of data.orderImage) {
payload.append('orderImage', file)
}
payload.append('userId', data.userId);
payload.append('materialId', data.materialId);
// payload.append('materialId', '5d79930c8c4a882f44b1b0fb');
payload.append('color', data.color);
payload.append('description', data.description);
payload.append('quantity', data.quantity);
payload.append('city', data.city);
payload.append('detailAddress', data.detailAddress);
console.log("Cek Data : ", payload);
fetch(config.baseUrl + apiEndpoint, {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + localStorage.getItem('token'),
'Content-Type' : 'multipart/form-data; boundary=----WebKitFormBoundaryHl8DZV3dBSj0qBVe'
},
body: payload
})
// orderService.post(apiEndpoint, payload)
// .then(res => {
// if(res.data.status === 200) {
// alert(res.data.Message);
// dispatch(createOrderSuccess(res.data));
// history.push('/user-order');
// } else {
// dispatch(createOrderFailed());
// alert(res.data.Message);
// }
// })
};
}
有人能帮我解决这个问题吗?我对这个问题很困惑
编辑1
在尝试使用@narasimha解决方案后,我终于摆脱了多部分边界,但我得到了奇怪的行为,数据成功地编码如下:
但是,当我尝试检查响应时,photoUrl返回null
或``如下所示:
当我尝试使用失眠或邮递员时,它成功地生成了如下照片URL:
我哪里做错了?我昨天也有同样的问题。问题在于内容类型。我使用的内容类型标题与您使用的内容类型标题相同。问题是我删除了内容类型,并允许fetch()API自动处理它。成功了 感谢您的回复,当我最终尝试使用您的解决方案时,我可以消除边界,但photoUrl返回空数组,正如您在我的编辑1
部分中看到的那样,您能解决这个问题吗?我目前面临着同样的问题