【发布时间】:2018-07-25 00:38:22
【问题描述】:
https://developers.google.com/places/web-service/details
我收到 CORS 错误。好的,我尝试在角度中使用 jsonp 并得到另一个错误。
Uncaught SyntaxError: Unexpected token :
我认为是因为 gmaps api 不支持 jsonp。 Querying Google Places API using jQuery
但是如何通过angular从 API 获取地点详细信息?
代码
const params = new URLSearchParams();
params.append('key', 'MYAPIKEY');
params.append('placeid', placeId);
params.append('callback', 'JSONP_CALLBACK');
const url = 'https://maps.googleapis.com/maps/api/place/details/json';
return this.jsonp.get(url, {search: params});
或
getPlaceDetails(placeId: string) {
const httpParams = new HttpParams()
.append('key', 'MYAPIKEY')
.append('placeid', placeId);
const url = 'https://maps.googleapis.com/maps/api/place/details/json';
return this.http.get<PlaceDetail>(url, {params: httpParams}).map(c => c.result);
}
如果我使用 cors chrome 扩展,第二种方法有效
【问题讨论】:
标签: javascript angular google-maps typescript jsonp