我做了很多o測試通過jQuery ajax上傳文件,但我仍然有這個錯誤:400錯誤的請求。
這是我的代碼:
function createDatasetSync() {
var form = $('#fileUploadForm')[0];
var data = new FormData(form);
$.ajax({
type: 'POST',
url: '<remote API to call>',
beforeSend: function(xhr) {
xhr.setRequestHeader("Authorization", "Bearer " + <myToken>);
xhr.setRequestHeader("Content-Type", "multipart/form-data");
},
data: data,
cache: false,
contentType: false,
processData: false,
timeout: 600000,
success: function (data) {
console.log(data);
},
error: function (data) {
console.log("ERROR: " , data);
}
});
}
$(document).ready(function() {
$("#btnSubmit").click(function (event) {
event.preventDefault();
createDatasetSync();
});
});
<html>
<body>
<form method="POST" enctype="multipart/form-data" id="fileUploadForm">
<input type="file" name="files"/><br/><br/>
<input type="submit" value="Submit" id="btnSubmit"/>
</form>
</body>
</html>
我有一個.zip文件發送到遠程Web服務。
這是我試圖複製捲曲電話:
curl -X POST -H "Authorization: Bearer myTOKEN" -H "Cache-Control: no-cache" -H "Content-Type: multipart/form-data" -F "[email protected]:\myFile.zip" -F "type=image" URL_to_call
在此先感謝。
首先,「http status」爲400表示您嘗試向服務器發送請求的錯誤負載。你能驗證'data'的格式是什麼嗎?這會給你一個洞察問題,你會沒事 – Rowland
我試着用不同的文件類型:.jpeg .zip .txt和我有同樣的錯誤。 我需要上傳一個.zip文件 –