[英]efficient way of calling a 3rd party web service
我目前使用Google Places API检索移动应用程序(iOS和Android)中的信息。
现在我的问题是如何设计应用程序,以便我的应用程序代码不受Google或任何第三方服务对URL结构的任何更改的影响。
目前,Google要求我们使用以下网址结构:
https://maps.googleapis.com/maps/api/place/search/output?parameters
现在假设如果我已经将该URL嵌入到我的代码中,并且Google更改了该URL或我决定使用其他服务,那么一旦将其投入生产,就需要再次修改我的代码。
是否可以通过其他方式执行此操作,以便我的应用程序代码可以不受任何此类更改的影响。
我还通过PHP通过自己的服务器将某些内容流式传输并加载到我的应用程序中。 因此,最好先将信息请求发送到我的服务器,然后再从Google的服务器中获取这些详细信息,然后将其以所需的形式返回给我的代码。
图解说明
之前我在做这个
我的应用程序->对Google服务器的请求-> Google服务器的响应->对我的应用程序
现在,我正在考虑这种结构
我的应用程序->使用所需参数向服务器发送请求->向Google服务器或我想使用的任何第三方放置的API请求->对服务器的响应->以要求的形式发送给我的应用程序。
我知道这种方法会增加响应的延迟,但是它将使控制权掌握在我手中。 而且,我可以在多个平台上使用相同的服务器端脚本。
有没有更好的办法 ?
我在访问第三方数据时遇到了类似的情况,将来访问可能会更改,但访问次数不会太多,也不会太频繁。 我找到的最简单的方法是将URL或任何其他数据放入配置数组中,在我的情况下,该数组已加载到Config
对象中。 然后,我有一个使用Config
决定如何获取数据的Importer
类。 我的应用程序其余部分仅与Importer
对话。 因此,如果URL发生更改,我所需要做的就是在配置数组中对其进行更改。
如何实施您的解决方案,但是在应用程序加载时只需一次调用? 换句话说,当应用程序启动时,您将进行某种注册/登录通信,并下载这些请求的字符串/协议。 这样,一旦建立用于请求的格式,您仍然可以拥有相当不错的性能。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.