[英]Dojo XHR treats 200 OK as error
我使用Dojo xhr將一些數據發布到ASP.NET MVC控制器:
xhr.post("/MyController", {
handleAs: "json",
data: {
contentIdentifier: 'abc123',
language: 'en'
}
}).then(function (response) {
console.log('Success.');
}, function (err) {
console.error(err);
});
控制器返回純文本結果,我可以看到服務器的響應確實是200 OK 。
但是,錯誤處理程序總是被觸發。
當輸出err到控制台時,我得到類似:
SyntaxError: Unexpected token S
message: "Unexpected token S"
response: {
options: TMP
status: 200
text: "Successfully pushed content to 1 instance(s)."
在我看來,錯誤是因為它無法將純文本響應解析為JSON? 即單詞“ Successfully”中的第一個“ S”是xhr的中斷內容嗎?
響應的內容類型為text / plain
衛生署。
根據Dojo文檔的handleAs參數:
用於處理響應有效載荷的內容處理程序。
換句話說,將handleAs設置為“文本”即可解決該問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.