我是sencha touch的新手,但我得到的错误似乎与google maps api有关。我正在调用google maps api来搜索sencha touch中的特定位置。但我收到了以下错误
这是我在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'
}
}
}
});
如何解决此错误?
答案 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); });