1
1つのAPIをヒットしようとしていますが、マルチパートデータを使用してHTTP POSTリクエストを行っていますが、400リクエストが間違っています。HTTPマルチパートリクエストで400のリクエストエラーが発生しました。
var reqPayload='{
"param1":"value1"
}';
var ajaxOptions = {
url: href,
type: method_NAME,
async: true
};
ajaxOptions.data = new FormData();
ajaxOptions.data.append("jsonInputParameters", $.parseJSON(reqPayload));
ajaxOptions.contentType = false;
ajaxOptions.processData = false;
//following will not create any problem since there is only 1 file.
$.each($('#id_NAME input[type="file"]')[0].files, function(i, file) {
ajaxOptions.data.append('primaryFile', file);
});
私の要求は、次のようになります。
------WebKitFormBoundary9hoSobTAHgGksFST
Content-Disposition: form-data; name="jsonInputParameters"
[object Object]
Content-Disposition: form-data; name="primaryFile"; filename="example.txt"
Content-Type: text/plain
------WebKitFormBoundary9hoSobTAHgGksFST
しかし、私が欲しいのはこれです:
------WebKitFormBoundary9hoSobTAHgGksFST
Content-Disposition: form-data; name="jsonInputParameters"
{
"parentID":"FB4CD874EF94CD2CC1B60B72T0000000000100000001"
}
------WebKitFormBoundary9hoSobTAHgGksFST
Content-Disposition: form-data; name="primaryFile"; filename="example.txt"
Content-Type: text/plain
<File Content>
------WebKitFormBoundary9hoSobTAHgGksFST--
私はこれを発行するために、いくつかの回避策を教えてください問題。
ただし、変数reqPayloadはすでに文字列形式です。では、どうすればこの問題を解決できますか? – Vishwanath
また、Stringの代わりにオブジェクトを送る必要があります。 – Vishwanath
良い点。その場合は、エンコードせずに直接FormDataに追加してください。 –