javascript - 如何在 IE 中返回 AJAX 回调?
问题描述
我无法访问从 IE11 上的 AJAX 请求中检索到的数据。我正在使用 Jquery 发送 AJAX 请求:
在 Chrome 中,FF 我有一个responseText字段,我可以在响应对象中轻松访问该字段。
var ExternalApiService = (function(){
var getTimeGMT = function(){
return $.get("{api_path}.php",function(data, textStatus, jqXHR){
return jqXHR.responseText;
});
};
return{
getTimeGMT: getTimeGMT
}
})();
然后,当我打电话时
ExternalApiService.getTimeGMT()
在 Chrome 和 FF 上,我得到响应的对象有一个我可以轻松访问的responseText字段。在 IE11 中我没有那个字段。
然而,在 IE开发人员工具中,在Network上,在 API 调用中,如果我单击Body => Response body的右侧,我可以看到我有我需要的文本。API调用有效,我只是无法访问响应正文。
我如何访问这些数据?
解决方案
根据文档,responseText
是作为第三个jqXHR
参数传递给成功函数的对象的参数,而不是. 也就是说,响应数据已全部包含在内 - 很少有理由使用原始值,因为您已经拥有它。data
data
jqXHR.responseText
$.get('https://{api_path}.php',function(data, textStatus, jqXHR){
console.log(jqXHR.responseText);
return data;
});
如果您在没有正确 CORS 标头的情况下发出跨域请求,则它可能不可用。
推荐阅读
- javascript - 如何在我的页面上永久禁用 Google Analytics 跟踪?
- javascript - 如果检查输入,则将类添加到 HTML 元素
- python-3.x - diff() 函数输出 - 时间序列格式
- python - 从单独的 python 脚本运行蜘蛛
- json - JSON Schema if/then 需要嵌套对象
- powershell - 使用 DLLImport 从 Powershell 调用 C++ 代码
- javascript - Javascript 仅允许 URL 参数的白名单
- haskell - 对单子“运行”功能的直觉
- abap - 在列表报告中单击时,图标“未选中的框”未更改为“选中”
- linux - 如何在旋律音乐播放器/flatpak 应用程序中访问外部驱动器