收费Api的正确使用方式

    在做App开发时,我们经常会使用到一些第三方的Api接口,比如说天气查询,快递查询,图像识别等等,通常这些接口都是有限额或者按照调用次数收费的。如果我们在App端直接调用这些接口,一旦用户数多了,将会产生大量的费用。通常我们会采用服务器数据库来保存请求的数据,但是由于API数据会经常变化而且数据量极大,这样会极大的增加系统的复杂性。

     合适的做法是使用独立的中转服务器,这个服务器负责接受App的请求,然后转发请求到第三方接口,然后再把结果返回给App。服务器除了做请求转发以外,还可以做更多的工作,比如说:请求结果redis缓存,这样可以加快下一次相同请求的响应时间;配置Http缓存,增加max-age , max-stale 和 ETag 等Cache-Control 字段,可以大量减少客户端的请求次数,提高用户使用体验;优化接口参数,配置权限验证信息等等,这样的好处是在服务器端保存Api key和scret,防止泄露,也使App调用更加简洁。

    如果大家对这一块感兴趣可以参考我写的一个开源工具,地址是https://github.com/readen/Relay 。使用该工具只要配置一个json格式的文件就可以自动生成请求转发代码,还包括了redis缓存和接口验证等等。使用该方法,像天气查询这类应用可以减少百分之八十以上的实际请求,从而节约陈本,同时还提高了用户加载速度。

你可能感兴趣的:(收费Api的正确使用方式)