我正在尝试使用JQuery进行异步AJAX调用。
try
{
let resp = await $.ajax({
type: 'POST',
dataType: 'json',
url: 'https://xxxx/api/token',
data: { AuthCode: authCode }
});
let accessToken = resp.access_token;
document.getElementById("token").innerText = accessToken;
} catch (ex) {
// Write the exception to the output area
document.getElementById("token")
.innerText = JSON.stringify(ex, null, 3);
}
由于某种原因,此代码导致以下异常:
{
"readyState": 4,
"responseText": "{\"\":[\"The input was not valid.\"]}",
"responseJSON": {
"": [
"The input was not valid."
]
},
"status": 400,
"statusText": "Bad Request"
}
当我从Postman调用完全相同的API时,它返回的结果没有问题。
答案 0 :(得分:1)
您可能没有使用正确的标题发布到端点。您的端点期望application/x-www-form-urlencoded
还是application/json
?无论哪种方式,您都可以通过headers属性设置标题,例如:
$.ajax({
...
headers: {
"Content-Type":"application/json"
}
});