2.5. Github 的 Restful HTTP API 设计分解

本教程最新版为 9.x,当前版本已放弃维护,请阅读最新版本!

什么是 RESTful

RESTful 是一种软件设计风格,由 Roy Fielding 在他的 论文 中提出,全称为 Representational State Transfer,直译为表现层状态转移,或许可以解释为用 URL 定位资源,用 HTTP 动词描述操作,不用太纠结于定义,接下来我们会详细讨论。

RESTful 风格的接口,目前来看,实现的最好的就是 Github API,经常被效仿。接下来我们通过分析 Github API 来引出我们的 API 设计原则。

为什么选择 RESTful

我认为一套接口应该尽量满足以下几个原则:

  • 安全可靠,高效,易扩展。
  • 简单明了,可读性强,没有歧义。
  • API 风格统一,调用规则,传入参数和返回数据有统一的标准。

我们当然可以根据自己的经验,或者参考知名公司的接口总结设计出一套满足要求的接口,但是...

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
贡献者:5
讨论数量: 7

Bennent_G
响应格式 xml 问题 ?
2 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
月光
为什么非 HTTPS 的 API 调用,不重定向而直接返回错误?
1 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
喜鸥得逸
API 多版本的目录设置问题
1 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
phpervip
monch
接口跨域的时候呢
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
wiladog
dingo API 自定义数据响应格式?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
Mr-houzi
探讨一下restful api的批量删除写法
0 个点赞 | 1 个回复 | 分享 | 课程版本 8.x