2010-12-22 38 views

回答

0

在您的jsonp響應中編碼您的XML,然後讓您的客戶端提取它並將其解釋爲XML。

+0

參考:HTTP:// WWW。 west-wind.com/weblog/posts/107136.aspx。 – OnesimusUnbound 2010-12-22 03:47:01

0

您必須修改服務器。您可以使用JSONP的XML原理。你只需要傳遞一個字符串:

E.g.假設你的服務器端程序在/ xmlp。您傳遞callback參數,然後腳本將XML輸出包裝在此中。

E.g.

/xmlp?callback=mycall 

輸出:

mycall('<root><el attr="value"/ ></root>'); 

然後,解析在客戶端的XML(傳入一個JavaScript mycall功能)。

0

只要數據源位於不同的域中,就必須使用JSONP來獲取數據。這是針對JSON和XML數據的。 JSONP只是一個註釋,它使您可以提供回調函數,只要遠程調用完成,它就會被調用。數據作爲回調參數提供。

事業,你的API必須儘快請求API包含「?回調= F」支持JSONP,它必須返回類似

{ f(data); } 

和f - 是您的網頁上的某處定義的函數。

所以,基本上當API調用完成後,你調用了回調函數。

您有幾種選擇使用的API不同來源

  1. 隨着YQL - http://developer.yahoo.com/yql/
  2. 手工,純JS或使用jQuery - http://www.beletsky.net/2010/07/json-jsonp-and-same-origin-policy-issue.html
相關問題