嗨不知道如何通过ajax发送包含文件的结构, 我需要将此结构作为json发送并包含一个图像,我在ajax中收到错误,
var professionalCardNumber = $("#professional_card_number_input").val();
var professionalType = $("#professional_type_input").val();
var isWorking = $("#is_working_input").val();
var inputFileImage = document.getElementById("evidence_input");
var evidence = inputFileImage.files[0];
e.preventDefault();
var professionalInformation = {
"professionalCard": {
"number": professionalCardNumber
},
"professionalType": professionalType,
"isWorking":isWorking,
"evidence": evidence
}
$.ajax({
type: requestType,
url:"/api/v1/doctors/me/professional_information?errors=verbose",
headers: {
"accessToken": localStorage.accessToken
},
data:{
professionalInformation:professionalInformation
},
success: function(data){
console.log(data);
}
});
答案 0 :(得分:0)
您希望对数据使用JSON.stringify
以及其他相关选项:
$.ajax({
"type": "POST",
"headers": {
"Content-type": "application/json",
"accessToken": localStorage.accessToken
},
"url": "/api/v1/doctors/me/professional_information?errors=verbose",
"data": JSON.stringify(professionalInformation)
})
所以你在这里应该有一个POST
或PUT
动词,但这实际上就是终点应该期待的任何内容,(但这些都是最佳实践)。 ' Content-type`标头也应该在那里,但你的端点可能只是假设它是JSON。