为什么服务器端地理位置检测优先于客户端API调用?

时间:2017-11-04 14:36:14

标签: server client google-tag-manager ip-geolocation

我需要在我们的网站上实施地理位置检测。 (我需要计算并将状态变量传递给Google跟踪代码管理器,以后这个变量可能会在服务器端使用,根据状态呈现特定的阻止,但是现在只需要客户端用于GTM)

我发现this article非常有帮助。这是检测天气的一个更复杂的例子。我只需要地理位置。 在文章中,作者给出了客户端API调用的示例,但有几次他建议使用完全服务器端调用。

  

对于那些想要认真对待这种天气分析的人,我真的   建议转向100%服务器端解决方案,天气如何   在呈现页面本身之前轮询数据,数据是   写在页面的dataLayer中。

  

如果您对此解决方案非常认真,可能需要安装一个   您自己的Web服务器上的地理定位服务,这样您就可以避免   需要在客户端进行任何额外的API调用。

所以看起来服务器端检测更好,但我不明白为什么。任何人都可以解释一下。

1 个答案:

答案 0 :(得分:0)

一个给定的原因是安全性 - 如果您通过Javascript查询商业API并在您的请求中传递API密钥,则其他人可能会自费使用它。

使用JavaScript,您必须发出请求,然后在继续呈现页面之前等待响应。在浏览器呈现页面时,已经完成了服务器端解决方案查询,错误处理等操作;您也可以将请求缓存到API,以降低成本并加快交付速度。