如何使JQuery将Ajax响应视为纯文本而不是JSON

我正在使用一个返回JSON的API。API返回的JSON语法被破坏了,我无法控制修复它

我正在使用jQueryAjax调用,它返回500-内部服务器错误。我想得到API响应和纯文本,并修复JSON语法。它只是在结尾有一个额外的逗号,我可以删除它。但我无法得到纯文本的回应

我已经尝试了几种方法,例如使用dataType to plain text将内容类型和/或接受头设置为纯文本,如下所示。我的代码如下

$.ajax({
url:APIRL+“/”+客户ID+“/accounts/”+accountId,
数据:“客户_id=“+clientId,
数据类型:“文本”,
键入:“GET”,
async:true,
状态代码:{
404:功能(响应){
console.log(“无效的事务详细信息”);
},
200:功能(响应){
//这里是响应处理代码
}
},
错误:函数(jqXHR、状态、错误抛出){
//错误处理例程
}
});

更新1
当直接从浏览器或fiddler调用API时,API工作正常。这就是我知道JSON语法被破坏的原因

你的代码运行得很好,肯定还有另一个错误

看到我的小提琴了吗

$.ajax({
网址:'http://ip.jsontest.com/',
数据类型:“文本”,
键入:“GET”,
async:true,
状态代码:{
404:功能(响应){
警报(404);
},
200:功能(响应){
警报(响应);
}
},
错误:函数(jqXHR、状态、错误抛出){
警报(“错误”);
}
});

它以字符串的形式从测试API返回json

发表评论