如何从Google商家信息中获取附近的地点?

时间:2017-01-19 12:25:46

标签: angular

我正在开发一个需要附近学校的项目,我的技术是Angular 2,我在客户页面中尝试了下面的Google API Http请求

https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=lat,long&radius=5000&type=school&key=<my-API-KEY>'

但是在请求此API时,我正在获取CORS错误

  

XMLHttpRequest无法加载   https://maps.googleapis.com/maps/api/place/nearbysearch/json?location-42.60 ... = 5000&安培;类型=学校&安培;传感器=假安培;键=。   请求中不存在“Access-Control-Allow-Origin”标头   资源。因此,不允许原点“http://mysite.something”访问。

所以我需要一个解决方案来启用我的Http请求中的CORS服务,或者我需要一个替代解决方案来获取基于Lat Long的Angular 2附近的学校

2 个答案:

答案 0 :(得分:0)

当您尝试从非ssl认证的网站访问google place API时会出现此错误。现在还必须在您的应用程序中使用https//maps.googleapis.com从google place api获取数据。

此更改于2016年中期完成,为此,您需要将您的网站放在ssl中,然后才能访问

答案 1 :(得分:0)

首先,您需要一个API密钥才能访问API。

请检查:https://maps.googleapis.com/maps/api/place/nearbysearch/json?location-42.60

您可以从Google API Console获取API密钥。您必须为应用程序所需的API启用和创建凭据。您还可以指定可以从中访问此API的主机站点。

其次,您可以实现商店定位器以满足您的应用程序要求。检查一下:https://developers.google.com/maps/articles/phpsqlsearch_v3

P.S。 Google API并非完全免费。他们将为您提供预定义的点击次数/ API访问权限。他们中的大多数被限制为每天1000个免费请求。您可以通过支付额外的点击数来延长此限额,我猜这是0.5美元/ 1000个请求。