我了解在 YUI 3 中进行 ajax 调用的方法是使用 IO 实用程序。我想从 Google 的地理编码 API 中获取某个位置的地址。
<script type="text/javascript"><!--
YUI().use('io-base', function(Y) {
function complete(id, o) {
var data = o.responseText; // Response data.
alert(o.responseText);
};
Y.on('io:complete', complete, Y);
var request = Y.io("http://maps.googleapis.com/maps/api/geocode/json?language=en&sensor=false&latlng=12,34);
});
//-->
</script>
我收到了带有方法OPTIONS和状态代码405 Method Not Allowed的回复。我相信这是因为一些“预检”权限检查。我没有收到想要的回复。如果我将 url 复制并粘贴到浏览器中,我会看到 json 数据。
我可以将 ajax 请求发布到我自己域上的 php 脚本中,并使用 curl 获取 json 响应。但是,如果我可以在 javascript 中获取数据,为什么还要有这个额外的步骤呢?
那么我能做些什么来解决这个问题呢?IO 实用程序不是要使用的正确库吗?