Build API For Your Company 系列介绍
Build API For Your Company
介绍
我是一个刚入职创业公司的新手,在开始为公司的iPhone App写服务器端的 API 接口的时候,遇到了很多让人痛苦的问题。在搜索资料和和几位前辈聊天的过程中了解到很多有用的信息和经验,所以我开是着手来修改整个 API 的规范和重构一下这些接口的实现。所以把自己从这些资料中的理解和一些有用的工具、信息和大家分享一下。
参考资料
Book: Build APIs You Won't Hate
A RESTful API package for the Laravel framework: dingo/api
整篇博客的内容概要
- 非常有用的数据填充
- 创建符合规范的API接口
- Input和Output理论
- 错误代码和错误信息的处理
- 接口测试
- 数据返回
- 接口调试
- Authentication实现
- 分页(接口经常处理的事务)
- 接口文档
- API 版本控制
- 扩展阅读
- Dingo/api 的使用
注:这个内容的组织有直接参考 Build APIs You Won't Hate 这本书的结构,如果英文你足够好,那你去看看这本书也ok,有很多地方我都是按照自己的理解翻译了一些东西过来。以后会持续更新这块博客内容。
谁适合读一下这个系列
或许你和我一样,也是一个编程新手,或许也和我一样,在为公司的前端 Javascript Framework
、 iPhone App
, 或者 API-centric-architenture
的程序,写API接口。这个工作或许很简单,无非是从一些数据源抓取一些数据然后返回一些指定格式的数据(maybe Json/XML/Yaml),但是痛苦的地方在于数据结构、业务逻辑在时刻发生变化,新的接口会添加,有些接口也会过时,接口的规范化和测试更让人痛苦。那我觉得读一下这个系列,获取一点对你有帮助的信息和方法,会是一件非常明智的事情。
Laravel Framework
的一些功能(Schema、Migration、Database Seeding、Routing等等)提供了非常简单的方式去快速的完成你的工作,所以我们使用Laravel来完成整个系列的描述。
我希望我写完这个系列之后,能够轻松的创建一个符合规范的 RESTful
API,可以快速的进行接口测试、调试,以及返回更易用的数据格式,能够用更优雅的方式实现 Authentication、分页、版本控制这些这些高级内容,能够发布一个清晰明了的API文档,更好的进行团队协作。
当然,希望你读完这个系列也能够完成这些成就。
排版很不错, 很期待
测试
方面的分享. :smile: