**1. HTTPS:**HTTPS 为接口的安全提供了保障,可以有效防止通信被窃听和篡改。而且现在部署 HTTPS 的成 本也越来越低,你可以通过 cerbot 等工具,方便快速的制作免费的安全证书,所以生产环境,请务必使用 HTTPS。
另外注意,非 HTTPS 的 API 调用,不要重定向到 HTTPS,而要直接返回调用错误以禁止不安全的调用。
**2. 域名:**应当尽可能的将 API 与其主域名区分开,可以使用专用的域名,访问我们的 API,例如:
https://api.domain.com
或者可以放在主域名下,例如:
https://www.domain.com/api
**3. 版本控制:**随着业务的发展,需求的不断变化,API 的迭代是必然的,很可能当前版本正在使用,而我们就得开发甚至上线一个不兼容的新版本,为了让旧用户可以正常使用,为了保证开发的顺利进行,我们需要控制好 API 的版本。
通常情况下,有两种做法:
将版本号直接加入 URL 中
https://api.domain.com/v1
https://api.domain.com/v2
使用 HTTP 请求头的 Accept 字段进行区分
https://api.domain.com/
Accept: application/prs.domain.v1+json
Accept: application/prs.domain.v2+json
Github Api 虽然默认使用了第一种方法,但是其实是推荐并实现了第二种方法的,我们同样也尽量使用第二种方式。