2012-04-28 74 views
0

我有問題獲取此JSON對象通過JSONP在Chrome 18(最新穩定版)中加載。由於某種原因,它給我提供了錯誤:Uncaught SyntaxError: Unexpected token :。根據JSONLint,響應是一個有效的JSON對象。Chrome無法解析單行JSONP對象

下面是代碼示例:http://jsfiddle.net/jakebellacera/2j7DL/1/

補充:我試圖繞過跨域,我有權兩臺服務器上,但我們不能讓對具體原因特定領域跨域。如果有更好的方法來做到這一點,請讓我知道。

+0

是不是所有的內部'{,},[,]'實體都必須被轉義?我以爲JSON解析器處理把它變成有效的JSON ... – 2012-04-28 03:23:08

回答

2

lpunderground.com上的服務器正在返回JSON,而不是JSONP。

JSONP的特別之處在於它是一個有效的javascript語句 - 從服務器返回的數據被封裝在一個函數調用中(或者有時是一個變量賦值),並且在返回時它被評估爲正常的javascript。通常,客戶機在請求參數中傳遞服務器中的函數名稱以用於包裝數據。

有關詳細信息,請參見the Wikipedia articlethe jQuery docs

+0

謝謝,我想我只是有點困惑,如果jQuery有一種方式在回調函數中「包裝」一個JSON對象......但那didn對我來說沒有任何意義,因爲無論如何,它都會訪問跨域的內容。我想我只是需要一些驗證,無論哪種方式 - 謝謝! – 2012-04-28 05:23:37