使用JQuery和YQL的跨域AJAX请求

时间:2010-03-17 16:48:07

标签: jquery xml ajax yql

我需要使用YQL(Yahoo Query Language)来执行跨域ajax请求,然后将XML响应绑定到JSON对象中并从XML中检索值。

该链接显示了如何使用YQL服务作为跨域请求的代理来完成此操作: http://ajaxian.com/archives/using-yql-as-a-proxy-for-cross-domain-ajax

例如,我正在尝试加载以下请求:

http://query.yahooapis.com/v1/public/yql?q=select%20woeid%20from%20geo.places%20where%20text%20%3D%20%22London%2C%20UK%2C%20UK%22&format=xml

之后我需要从返回的XML内容中获取WOEID值。 有没有办法使用类似的代码来查询返回的XML数据?

非常感谢

1 个答案:

答案 0 :(得分:1)

你打电话给哪种语言?如果您使用PHP,则可以使用以下内容:

$url = "http://query.yahooapis.com/v1/public/yql?q=select%20woeid%20from%20geo.places%20where%20text%20%3D%20%22London%2C%20UK%2C%20UK%22&format=xml"
$data = file_get_contents($url);
$xml = simple_xml_load_file($data);
$woeid = $xml->query->results->place->woeid;

如果您使用的是Javascript,我建议您使用“format = json”,因为JS处理得更好。