1

私はsenchatouchを初めて使用しますが、発生するエラーはgooglemapsapiに関連しているようです。senchatouchの特定の場所を検索するためにgooglemapsapiを呼び出しています。しかし、私はエラーを下回っています

ここに画像の説明を入力してください

これがstore/Places.jsファイル内の私のコードです

Ext.define('TestIOS.store.Places', {
extend: 'Ext.data.Store',
config: {
    model: 'TestIOS.model.Place',
    autoLoad: true,

    proxy: {
        type: 'ajax',
        url: 'https://maps.googleapis.com/maps/api/place/search/json?location=-33.8670522,151.1957362&radius=500&types=food&name=harbour&sensor=false&key=AIzaSyCFWZSKDslql5GZR0OJlVcgoQJP1UKgZ5U',
        reader: {
            type: 'json',
            rootProperty: 'results'
        }
    }
}
});

このエラーを解決するにはどうすればよいですか?

4

1 に答える 1

1

これは同一生成元ポリシーによるものであるため 、他のサーバーからデータを取得するにはJSONPを使用する必要があります が、最新バージョンのGoogle Maps API(v3)はjsonpをサポートしていないようです。その結果、ジオコーディングする場合は、マップapiを使用する必要があります。

含む

<script src="http://maps.google.com/maps/api/js?sensor=false"></script>

senchaマイクロローダーを追加する前にindex.htmlで

<script id="microloader" type="text/javascript" src="sdk/microloader/development.js"></script>

住所を取得するには、googlegeocoderEXを使用します。

    var geocoder = new google.maps.Geocoder();
    geocoder.geocode( {'address': name of location },
        function(results, status) { console.log(results[0].geometry.location); });
于 2012-12-19T15:02:01.063 に答える