【发布时间】:2015-08-03 13:10:31
【问题描述】:
我正在尝试从我的应用程序中的纬度和经度中检索位置名称。现在在应用程序本身中添加我的谷歌地图 api 密钥是否安全,或者我应该在服务器端计算详细信息。
会影响性能吗?如果是,怎么做?
【问题讨论】:
标签: android node.js google-maps geolocation
我正在尝试从我的应用程序中的纬度和经度中检索位置名称。现在在应用程序本身中添加我的谷歌地图 api 密钥是否安全,或者我应该在服务器端计算详细信息。
会影响性能吗?如果是,怎么做?
【问题讨论】:
标签: android node.js google-maps geolocation
有一个有用的article 前几天写的关于这个的。
它展示了多种“隐藏”您的密钥的方法,以及逆向工程的难易程度。最后作者是这么说的:
保护秘密的最佳方法是永远不要泄露它们。在您自己的后端服务器/服务上划分敏感信息和操作应该始终是您的首选。如果您确实必须考虑隐藏方案,那么您应该意识到您只能使逆向工程过程更加困难(即并非不可能),并且您将在应用程序的开发、测试和维护中增加显着的复杂性这样做。
所以基本上,如果可能的话,最好将您的密钥存储在服务器端。
回答您关于性能的问题:这取决于如何您实现它。
如果您每次需要转换 lon/lat 时都进行服务器调用,那么是的,它可能会对性能产生负面影响。我认为更好的解决方案是进行具有您的密钥的服务器调用并返回翻译后的 lon/lat。或者,您可以在应用程序启动时调用服务器并将密钥保存在内存中。我不知道第二种解决方案是否安全。
【讨论】: