是否有现有的jsonp工具,比如在jquery中获取xml?

ode*_*dbd 8 xml jquery json jsonp

对于我正在开发的Web服务,我希望我的嵌入式代码(在客户端的站点上)从我的域中的服务器脚本中获取xml文件.

由于这是一个跨域请求,我想使用jsonp,因为它似乎是这种apis的事实上的标准.但是,对于我的应用程序,我更容易使用xml而不是json.现在,我当然可以将我的xml转换为服务器上的json,然后再返回到客户端站点javascript中的xml,但这似乎不必要地繁琐.我真正需要的是和xmlp解决方案,带有填充的xml.

我累了谷歌搜索,但找不到这样做的jquery插件.谁知道一个简单的解决方案

sal*_*the 5

你可以使用雅虎这样的东西!查询语言(YQL)可以使您不必为XML文件编写另一种输出格式.

例如,要通过JSONP-X获取此问题的XML提要,您将使用YQL查询URL,如:

http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20xml%20where%20url%3D%27http%3A%2F%2Fstackoverflow.com%2Ffeeds%2Fquestion%2F2671143%27%20and%20itemPath%3D%27feed.entry%27&callback=my_jsonpx_handler

[ 在YQL控制台中尝试此查询 ]

这给你一个如下结果; 有效地包装在JSON回调中的XML:

my_jsonpx_handler({"query":…,"results":["<entry xmlns=\"http://www.w3.org/2005/Atom\">\n <id>http://stackoverflow.com/questions/2671143/is-there-an-existing-tool-for-jsonp-like-fetching-of-xml-in-jquery<\/id>\n <re:rank xmlns:re=\"http://purl.org/atompub/rank/1.0\" scheme=\"http://stackoverflow.com\">0<\/re:rank>…"]});

然后,您的小部件可以在YQL URL中查询其数据,这些数据又将与服务器上的XML文件进行通信(具有缓存,速度等作为附加功能).


Ale*_*ton 4

json 起作用的唯一原因是页面上包含的 javascript 可以在窗口中运行,而不会出现任何 x 域问题。所以它必须保留 javascript。但是,您可以缩小 xml,确保其正确转义并将其作为 json 对象中的值发送。

echo 'callback({data: "' + xml string + '"});';
Run Code Online (Sandbox Code Playgroud)

或类似的规定。