这个问题在这里已有答案:
尝试使用标头的多个组合来执行ajax jQuery调用google maps Places API以获得预测。
我收到以下错误:
对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,'https://stackoverflow.com'原产地不允许进入。
在控制台中执行以下代码时(URL中没有API密钥):
jQuery.ajax({
type: 'GET',
url: "https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Amsterdam&types=geocode&key={API Key Here}",
contentType: "application/json",
dataType: 'json',
"crossDomain": true,
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Range, Content-Disposition, Content-Description, x-requested-with, x-requested-by',
"accept": "application/json",
"Access-Control-Allow-Origin":"*"
},
success: postSuccess,
error: postError,
});
function postSuccess(result,status,xhr) {
console.log("postSuccess");
}
function postError(xhr,status,error) {
console.log("postError", xhr,status,error);
}
如果有人可以指出我的决议,那将会很棒。
编辑:在询问之前搜索类似的问题,找到this但解决方案没有帮助。
Edit2:更具体地说,我想从JavaScript中的Places API中检索JSON结果:https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Amsterdam&types=geocode&key={API Key Here}
要从javascript访问places API,请使用Google Maps Javascript API v3 places library。