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 データが表示されます。
自分のドメインの php スクリプトに ajax リクエストを投稿し、curl で json レスポンスを取得することができました。しかし、javascript でデータを取得できるのに、なぜこの余分な手順が必要なのですか?
では、これを解決するにはどうすればよいでしょうか。IO ユーティリティは使用するのに適切なライブラリではありませんか?