使用sencha touch与谷歌地图有问题

时间:2012-12-18 10:56:57

标签: javascript google-maps google-maps-api-3 sencha-touch sencha-touch-2

我是sencha touch的新手,但我得到的错误似乎与google maps api有关。我正在调用google maps api来搜索sencha touch中的特定位置。但我收到了以下错误

enter image description here

这是我在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'
        }
    }
}
});

如何解决此错误?

1 个答案:

答案 0 :(得分:1)

归功于Same Origin Policy 所以要从其他服务器获取数据,我们必须使用JSONP 但它似乎是Google Maps API (v3) does not support jsonp的最新版本。因此,如果您想进行地理编码,则需要使用maps api:

包括

<script src="http://maps.google.com/maps/api/js?sensor=false"></script>
在添加sencha microloader之前在index.html中

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

并获取任何地址使用谷歌地理编码器 EX:

    var geocoder = new google.maps.Geocoder();
    geocoder.geocode( {'address': name of location },
        function(results, status) { console.log(results[0].geometry.location); });