3

嗨,

我正在开发一个带有 openlayers 示例的 jsFiddle。 http://dev.openlayers.org/releases/OpenLayers-2.11/examples/snapping.html

目前它不起作用,因为它没有得到对获取数据的 http 请求的响应。我该如何解决?

jsFiddle 在这里:http: //jsfiddle.net/TcuxA/6/ 转到脚本中的“// 创建三个矢量图层”行。有 3 个数据请求。如果您在浏览器中键入 URL,您会得到 JSON,但是当我运行 jsFiddle 时,我的萤火虫会给出 3 个错误。

我尝试使用 jsFiddle echo ( http://doc.jsfiddle.net/use/echo.html ) 进行修复,但这没有用。我不知道如何更改脚本以加载数据。

为什么我不能通过这些 URL 获取 json?什么是好的解决方案?

4

2 回答 2

1

一个好的解决方案可以是:使用 github 响应。您可以将示例与预定义的 XHR 请求响应一起存储在 github 中。

于 2012-10-10T13:43:26.793 回答
1

您遇到的是 XMLHttpRequest 对象引发的异常,因为您正在使用AJAX调用来自不同域的元素。最好这样说,例如,在这里:

“XMLHttpRequest 对象被阻止从其自己的域之外调用 Web 服务。这是明智的,因为如果您在一个地方调用脚本,然后它又调用另一台服务器上的脚本,它可能会使应用程序对所有人开放各种恶意脚本、黑客和漏洞利用。”

因此,最简单的方法是在本地对其进行编码并调用将驻留在本地服务器上的文件(poly.json、line.json 和 point.json)的本地副本。为了测试地图上是否所有显示,您可以将文件硬编码到您的代码中。我不确定如何以其他方式实现它。

于 2012-06-25T16:03:30.760 回答