包含 NaN 的 Json 数据在 ajax 请求期间会导致错误



我是一个通过 Web API 公开的端点,它像这样喷出 JSON:

"[{"SomeId":1,"SomeName":"Some name 1","Parameter1":1.13,"Parameter2":3.0 ...

到 jquery ajax get requests。一切正常,直到 JSON 包含 NaN(不是数字):

"[{"SomeId":1,"SomeName":"Some name 1","Parameter1":1.13,"Parameter2":NaN ...

如果返回此类数据,则会命中错误回调。

这是一个已知问题吗?是jquery还是Web api应该受到指责?我怎样才能缓解这种情况?谢谢。

发生这种情况是因为令牌NaN在 JSON 中无效。JSON 是 JavaScript 的对象初始值设定项语法的一个子集,它不包括它的几个方面,包括NaN(和Infinityundefined、...)。

提供该输出的 Web API 正在生成无效的 JSON,因此任何符合要求的 JSON 解析器都会对此提出抱怨。您需要修复(或要求其提供者修复)API。

相关内容

  • 没有找到相关文章

最新更新