【发布时间】:2018-04-30 09:11:52
【问题描述】:
我正在使用 Angular Js、MongoDb 实现单页应用程序 (SPA)。我正在使用带有承诺的休息电话。在用于开发的 Mozila 浏览器 Chrome 中休息调用工作正常。但是休息电话在 IE-11 中不起作用。它给了我 500 内部服务器错误。
我无法找到休息电话线。因为它没有显示行号。但我可以分享休息调用的示例代码。
Rh.all('apicall').get('dbname/_aggrs/'+ ar_dep +'?avars=' + query).then(function (d) {
console.log("response data");
});
上面的调用不是打印控制台。因为它在 IE-11 中被破坏,但这些其余的调用在其他浏览器中工作正常。
如果我把直接路径不带变量,那么它在 IE-11 中工作。
下面的工作休息电话
Rh.all('apicall').get('dbname').then(function (d) {
console.log("response data");
});
我正在更新我的问题。因为我发现解析url有些不同,因为restheart。
铬:
Rh.all('apicall').get('dbname/_aggrs/'+ ar_dep +'?avars=' + query)
解析后
localhost:8080/apicall/dbname/_aggrs/rout?avars={%22routes%22:%22US%22}
在查询对象中我有路线:我们。所以在 chrome 中它会解析 %22--%22 的“”。
在 IE-11 中
Rh.all('apicall').get('dbname/_aggrs/'+ ar_dep +'?avars=' + query)
解析后
localhost:8080/apicall/dbname/_aggrs/rout?avars={"routes":"US"}
在 IE-11 中,它不会将双引号解析为 %22 %22。它与字符串解析相同。
【问题讨论】:
-
检查服务器端错误日志。
-
@charlietfl 我看不到服务器端错误日志。因为我只调用 API。我没有与服务器端代码交互。
-
检查网络选项卡中的实际请求,然后与另一个浏览器中的相同请求进行比较。从标头到发送的数据的所有内容
-
在 chrome 中它工作正常。给我 200 ok 状态
-
这只是状态...请求中的其他内容必须不同
标签: angularjs mongodb internet-explorer cross-browser restheart