2012-06-20 86 views
3

Hy,jsFiddle如何獲得json?

我正在一個jsFiddle中使用openlayers示例。 http://dev.openlayers.org/releases/OpenLayers-2.11/examples/snapping.html

目前它沒有工作,因爲它沒有得到一個HTTP請求獲取數據的響應。我如何解決這個問題?

jsFiddle在這裏:http://jsfiddle.net/TcuxA/6/ 轉到腳本中的「//創建三個矢量圖層」行。 有3個數據請求。如果你在瀏覽器中輸入網址,你會得到JSON,但是當我運行jsFiddle時,我的螢火蟲會給出3個錯誤。

我試着用jsFiddle回聲修復(http://doc.jsfiddle.net/use/echo.html),但那不起作用。我不知道如何改變腳本來加載數據。

爲什麼我不能通過這些URL獲取json?什麼是好的解決方案?

回答

1

您遇到的情況是由XMLHttpRequest對象引發的異常,因爲您正在使用AJAX來調用來自不同域的元素。 This is better said, for example, in here:

「XMLHttpRequest對象是從外面自己的域調用Web服務的阻止。這是明智的考慮到,如果你在一個地方稱爲腳本,它反過來,叫另一臺服務器上的腳本,它可以讓應用程序對各種惡意腳本,黑客和漏洞都開放。「

所以最簡單的方法就是在本地編寫代碼並調用駐留在本地服務器上的文件(poly.json,line.json和point.json)的本地副本。爲了測試是否所有顯示在地圖上,您都可以將這些文件硬編碼到您的代碼中。我不知道如何以其他方式實現。

1

一個好的解決方案可以是這樣的:using github responses。您可以將您的示例存儲在github中,以及預定義的XHR請求響應。