如何使用axios将空对象(图像)发送到django

时间:2018-01-03 04:38:34

标签: javascript django reactjs axios

我有一个django后端,它会在接收来自API的请求时保存/删除图像。如果我使用swagger / postman调用API(发送参数null对象),我已成功删除保存的图像。但我无法通过Axios得到它。 来自Swagger的CURL:

curl -X PUT --header 'Content-Type: application/json' 
--header 'Accept: application/json' 
--header 'Authorization: JWT eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VybmFtZSI6IlNZU0FETUlOQFRSRUVTLkhBUlBBLkNPTSIsImV4cCI6MTUxNTAzNTU1MiwidXNlcl9uYW1lIjoiU1lTQURNSU5AVFJFRVMuSEFSUEEuQ09NIiwib3JpZ19pYXQiOjE1MTQ5NDkxMDR9.oz3_2fGKlOCesmU_RmSRJZOifZeFFQO1nwAWzyD6BYc' 
-d '{ \ 
 "menu_type": 255,  \ 
 "icon": null, \ 
   "login_id": 1 \ 
 }'

我的axios示例代码:

formData.append('menu_type', 255)
formData.append('login_id', 1)
formData.append('icon', null)

const config = {
  headers: {
    'content-type': 'application/json'
  }
}

return new Promise(resolve => {
  axios.put(url + form.menu_uuid + "/", formData, config)
    .then(function (response) {
  resolve(response);
})
.catch(function (error) {
  resolve(error.response);
});
});

我的请求有效负载截图: My request payload screenshot

是否有一些我遗漏的东西使得这个axios请求不起作用?

1 个答案:

答案 0 :(得分:1)

我已使用此axios代码在API处成功删除了图像:

formData.append('icon', null, '')

也许这个答案对其他人有用..