最新文章
在浏览器中 RESTful API 执行 delete 返回204无法获取 Body,也就是说执行成功后,只能返回空的。无法获取到返回的 Body 内容。 使用 restclient 可以获取到 body。 大多数人都认为204是成功删除的良好响应代码,因为通常没有充分的理由在删除某些内容后返回响应正文。 所以,如果 delete 操作成功且响应主体为空,则返回204。如果 delete 操作成功 […]
admin 2023-07-24 815
在实际资源操作中,总会有一些不符合 CRUD(Create-Read-Update-Delete) 的情况,一般有几种处理方法。 1. 使用 POST 为需要的动作增加一个 endpoint,使用 POST 来执行动作,比如: POST /resend 重新发送邮件。 2. 增加控制参数 添加动作相关的参数,通过修改参数来控制动作。比如一个博客网站,会有把写好的文章“ […]
admin 2023-05-19 1443
什么接口幂等性? 幂等性原本是数学中的含义,表达式的是N次变换与1次变换的结果相同。 RESTFul API 中的幂等性是指调用某个方法1次或N次对资源产生的影响结果都是相同的。 比如,RESTFul API 中的 GET 方法是查询资源,不会对资源产生影响,所以它是符合幂等性的; 再比如,RESTful API 中的 DELETE 方法是查询数据,每次都应该返回 status=204。 接口符合 […]
admin 2023-05-19 1104
HTTP 协议是互联网的基础协议,也是网页开发的必备知识,最新版本 HTTP/2 更是让它成为技术热点。 本文介绍 HTTP 协议的历史演变和设计思路。 一、HTTP/0.9 HTTP 是基于 TCP/IP 协议的应用层协议。它不涉及数据包(packet)传输,主要规定了客户端和服务器之间的通信格式,默认使用80端口。 最早版本是1991年发布的0.9版。该版本极其简单,只有一个命令GET。 上面 […]
admin 2023-05-19 910
JSON Web Token(缩写 JWT)是目前最流行的跨域认证解决方案,本文介绍它的原理和用法。 一、跨域认证的问题 互联网服务离不开用户认证。一般流程是下面这样。 1、用户向服务器发送用户名和密码。 2、服务器验证通过后,在当前对话(session)里面保存相关数据,比如用户角色、登录时间等等。 3、服务器向用户返回一个 session_id,写入用户的 Cookie。 4、用户随后的每一次 […]
admin 2023-05-19 973
RESTful 是目前最流行的 API 设计规范,用于 Web 数据接口的设计。 它的大原则容易把握,但是细节不容易做对。本文总结 RESTful 的设计细节,介绍如何设计出易于理解和使用的 API。 一、URL 设计 1.1 动词 + 宾语 RESTful 的核心思想就是,客户端发出的数据操作指令都是”动词 + 宾语”的结构。比如,GET /articles这个命令,GE […]
admin 2023-05-02 1799
今天,写篇文章介绍一下 RESTful API 中的动词覆盖吧。 在开发各种小程序的时候,总是会遇到不能正常支持 HTTP 请求的平台,比如支付宝小程序只支持 GET 和 POST 请求,这时候充分利用 HTTP 请求方法的 RESTful API 就会遇到问题,不支持 PUT, PATCH, DELETE 请求,该怎么办呢?嗯,使用动词覆盖。 什么是动词覆盖 我最初遇到不支持全部 HTTP 请求 […]
admin 2023-04-16 1175
作者:阮一峰 网络应用程序,分为前端和后端两个部分。当前的发展趋势,就是前端设备层出不穷(手机、平板、桌面电脑、其他专用设备……)。 因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信。这导致API构架的流行,甚至出现“API First”的设计思想。RESTful API是目前比较成熟的一套互联网应用程序的API设计理论。我以前写过一篇《 […]
admin 2023-04-16 1550
作者:阮一峰 越来越多的人开始意识到,网站即软件,而且是一种新型的软件。 这种”互联网软件”采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency)、高并发等特点。 网站开发,完全可以采用软件开发的模式。但是传统上,软件和网络是两个不同的领域,很少有交集;软件开发主要针对单机环境,网络则主要研究系统之间的通信。互联网的兴起,使得这两 […]
admin 2023-04-16 1325
热门文章