为 REST API 客户端证明 GPS 坐标的原点

Posted

技术标签:

【中文标题】为 REST API 客户端证明 GPS 坐标的原点【英文标题】:Proving the origin of GPS coordinates for REST API client 【发布时间】:2017-05-25 11:05:06 【问题描述】:

我很难找到任何解决此问题的方法。

我有一个rest api,一个android客户端,最终会有一个ios客户端。

我想在用户授予权限的某些情况下捕获我的移动客户端的 gps 坐标,然后将 HTTP POST 请求正文中的坐标发送到我的 api。

如果我的 api 被其他开发人员使用,我真的不希望他们能够在请求中输入假 gps 坐标。 我想不出一种方法可以证明发送的坐标是手机提供的实际读数,而不仅仅是一些虚假输入。

我的服务的某些功能要求这些坐标是真实的。

我能想到的唯一解决方案(而且我认为这不是一个好的选择)是发现另一个开发人员一直在伪造坐标,然后我会删除他们的帐户。糟糕的解决方案。

是否有任何预先存在的解决方案来解决这个问题? 任何想法都将不胜感激,

【问题讨论】:

他们不能只在模拟器中运行您的软件并为您的真实应用程序提供虚假 GPS 吗?如果您不拥有操作环境,则无法信任它。 如果他们真的想要破坏,那么我想他们肯定会这样做,是的。我只是想限制潜在的损害。 我想我更大的观点是,这似乎与 DRM 试图解决的无法解决的问题相似,或者更接近的类比可能是视频游戏世界中不完善的反作弊措施。 是的,这是一个足够公平的评论。 【参考方案1】:

我不确定是否有答案。我有客户在他们的车上使用 Wifi 运行我的司机应用程序,GPS 定位来自 Wifi 而不是卫星 - 不幸的是,它总是返回加拿大安大略省的工厂。

您确定要向其他人开放您的服务器 API 吗?听起来你不一定相信别人会提供有效的数据(这完全可以理解)。

HTH, 吉姆

【讨论】:

以上是关于为 REST API 客户端证明 GPS 坐标的原点的主要内容,如果未能解决你的问题,请参考以下文章

GPS坐标换算为百度坐标

谷歌地图 API 获取 GPS 坐标

何时转换GPS坐标

谷歌地图(javascript API):从地址获取 GPS 坐标

高德地图API注意事项

Powershell:在 Windows 10 中获取 GPS 坐标 - 使用 Windows 位置 API?