Aurelia http.get 不支持 Firefox

Aurelia http.get not working with Firefox

我正在使用 aurelia http.get,它适用于 IE 和 Chrome,但 Firefox 抛出异常 'SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data'。

当我在 Firefox 中 console.log return 时,它上面有标签,

 <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">
    [{"ID":1,"Name":"Bob",...}]
 </string>

这是直接来自 API 调用。

没有足够的代表发表评论。如果您发布了您的 http.get 代码,将会有所帮助。您显然正在获取数据,但格式似乎不对(至少对于 Firefox 而言)。我建议你阅读文档并找到如何设置在 http 调用中发送的数据类型。我认为其他浏览器自己解决了这个问题,但 Firefox 似乎迷路了

我在 Aurelia Gitter 中得到了答案。问题是 Firefox 默认 http.get 请求 xml 并且您必须配置 httpClient 以明确请求 json.

httpClient.configure(config => {
    config.withHeader('Content-Type', 'application/json');
});

这解决了我的问题。不确定为什么 Firefox 默认为 XML。控制器甚至在 return 上对 JsonConvert.Seralize(content) 说,但 Firefox 不在乎。 IE 和 Chrome 工作正常。感谢@apawsey 帮助我理解这个问题。