是否可以通过我的应用中的反向代理连接Google Maps API?

tre*_*lam 20 javascript android reverse-proxy google-maps-api-3 ios

我正在开发一个我想要使用Google Maps API的应用.

问题是与Google Maps API服务器的连接不稳定.有时它没关系,但有时候因为我在中国而受阻.

我提出的解决方案是通过反向代理生成所有Google Maps API请求.我可以在美国或香港设置服务器作为反向代理服务器,与Google地图服务器保持稳定的连接.

然后,我必须更改我的应用中所有Google Maps API的网址,以指向我的反向代理,代理将proxy_pass所有请求发送到Google地图服务器.

我有几个问题:

我将如何实现客户端库?我需要改变它们吗?如果是这样,我是否可以下载Google Maps JavaScript API文件并将其中的网址更改为我的代理服务器的域名?

我将如何使用Android和iPhone应用程序?我不确定Android和iPhone SDK是否会使用http协议发出请求.如果是,我如何用我的代理服务器的域名替换API的域名?

我想也许有一种方法可以捕获我的应用程序中发出的所有http请求并在发送之前对其进行修改但是谷歌搜索了一段时间后我发现它很难做到.

那么Android和iPhone应用程序可以做到这一点吗?或者有更好的方法来实现它与Web应用程序?

我也想知道这样做是否值得付出努力,因为解决方案看起来相当复杂,并且使用Google Maps API并不是必需的,因为在我们国家有替代它.我更喜欢谷歌地图API,因为它的API风格整洁,地图更漂亮.

小智 7

您的解决方案明显违反了Google的条款和条件.

10.1.1(a)您不得通过本服务中提供的技术或方式或Google可能指定的其他明确授权方式访问或使用Maps API或任何内容.例如,您不得通过Maps API之外的接口或通道(包括未记录的Google界面)访问地图图块或图像.https://developers.google.com/maps/terms

除了法律问题,我认为你回答了自己的问题."谷歌地图API不是必需品,因为我们国家有替代它".

但是,如果您一心想要使用谷歌地图,您可以使用他们的瓷砖与第三方库,如传单的Web内容.原生移动应用程序是一个完全不同的问题,但是我怀疑它是:不可能或b:不可行.