我正在玩JSONP。我理解(也許)這個概念,但在實現方面稍微落後。返回XML時的JSONP數據類型
我已經是一個Web服務器,從一個URL字符串,產生一個XML結果。正如我所研究的,JSONP應該解決跨域問題,但預期的返回數據仍然是JSON數組。因此,如果服務器正在返回XML,那麼如何讓我的ajax腳本識別並能夠解析它?
這裏是我的代碼:
var usdaurl = 'http://eligibility.sc.egov.usda.gov/eligibility/eligibilityservice?eligibilityType=Property&requestString=<?xml version="1.0"?><Eligibility xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="/var/lib/tomcat5/webapps/eligibility/Eligibilitywsdl.xsd"><PropertyRequest StreetAddress1="'+street+'" StreetAddress2="" StreetAddress3="" City="'+city+'" State="'+state+'" County="" Zip="'+zip+'" Program="RBS"></PropertyRequest></Eligibility>';
var clbk = function(xml){
var usda = $('Property').attr('Eligibility');
};
$.ajax({
url: usdaurl,
dataType: 'jsonp',
jsonpCallback: 'clbk'
});
另外,我得到的錯誤是從XML性反應的一個未識別的字符。
Uncaught SyntaxError: Unexpected token <