我大部分时间都在努力解决这个问题,我只是被难住了。
我有一个.NET web 服务,它返回一个 JSON 序列化响应,并试图用一个可以访问更多数据进行序列化的新服务来切换它。就处理请求的逻辑而言,这两个服务看起来都是一样的。都将 ContentType 设置为 application/json 并写入流。
我在客户端使用 jQuery 1.7.1,我将带有 URL 的 getJSON 发送到工作端点。Firebug 显示返回的结果,充满数据,并在 JSONLint 和其他中验证。我设置了一个 .ajaxSetup() 来捕捉 onError 事件,我得到了这个:
textStatus: parsererror
Error Thrown: Error: jQuery17109478366139694514_1337880510219 was not called
jqXHR Response Text: undefined
(我格式化了消息)
我正在查看的 JSON 是这样的:
[
{
"sourceType": "KML",
"dataUrl": "http://firefly.geog.umd.edu/kml/download.php?file=kml_global_modis-hotspots.kml",
"id": "https://example.com/KmlFeeds::KMLFeeds::FIRMS::World",
"title": "FIRMS - World",
"description": "MODIS hotspot / fire and burned area",
"originator": "NASA LANCE",
"spatialDomain": null
},
{
"sourceType": "KML",
"dataUrl": "http://firefly.geog.umd.edu/kml/download.php?file=Alaska_24h.kml",
"id": "https://example.com/KmlFeeds::KMLFeeds::FIRMS::Alaska",
"title": "FIRMS - Alaska",
"description": "MODIS hotspot / fire and burned area",
"originator": "NASA LANCE",
"spatialDomain": null
},
...
]
(spatialDomain 有时有边界框坐标,字符串中只有逗号分隔的小数)
我的旧 Web 服务返回相同的内容,但有几个不同标签的键。使用新服务,我永远不会收到将所有这些数据发布到网站的回调。它肯定会回到我身边,无论如何我看起来都是有效的。
我想认为新服务有些问题 - 如果我只是将请求 URL 切换回旧的,我的客户就可以正常工作。但是响应作为有效的 JSON 返回,所以我无法弄清楚它是如何在进入成功回调时遇到问题的。想法?