You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PUT方法:使用请求中的负载创建或者替换目标资源。如果目标资源不存在,并且PUT方法成功创建了一份,那么源头服务器必须返回201 (Created)来通知客户端资源已创建。如果目标资源已经存在,并且依照请求中封装的表现形式成功进行了更新,那么,源头服务器必须返回200 (OK)或者204 (No Content)来表示请求的成功完成。
HTTP request methods
idempotent(幂等性):就是用户对于同一操作发起的一次或者多次的结果是一致的,不会因为多次操作而产生不一样结果。
Cacheable(可缓存):浏览器可缓存的
HEAD
方法:请求资源的头部信息, 并且这些头部与GET
方法请求时返回的一致. 该请求方法的一个使用场景是在下载一个大文件前先获取其大小再决定是否要下载, 以此可以节约带宽资源.OPTIONS
方法:用于获取目的资源所支持的通信选项。在CORS
中,可以使用OPTIONS
方法发起一个预检请求,以检测实际请求是否可以被服务器所接受。PATCH
方法:用于对资源进行部分修改。PUT
方法:使用请求中的负载创建或者替换目标资源。如果目标资源不存在,并且PUT
方法成功创建了一份,那么源头服务器必须返回201 (Created)
来通知客户端资源已创建。如果目标资源已经存在,并且依照请求中封装的表现形式成功进行了更新,那么,源头服务器必须返回200 (OK)
或者204 (No Content)
来表示请求的成功完成。POST
方法:发送数据给服务器。请求主体的类型由Content-Type
首部指定。Content-Type
常用类型有:application/x-www-form-urlencoded
、application/json
、multipart/form-data
。GET
方法:请求指定的资源。使用 GET 的请求应该只用于获取数据。TRACE
方法:实现沿通向目标资源的路径的消息环回(loop-back)测试 ,提供了一种实用的 debug 机制。最终接收者是指初始(origin)服务器,或者第一个接收到Max-Forwards
值为0
的请求的服务器。区别
GET
请求参数放在URL
上,POST
请求参数放在请求体里GET
请求参数长度有限制,POST
请求参数长度可以非常大POST
请求相较于GET
请求安全一点点,因为GET
请求的参数在URL
上,且有历史记录GET
请求能缓存,POST不能PUT
是幂等的,而PATCH
不是幂等的PATCH
方法用来更新局部资源,PUT
是全部更新资源PUT
是幂等的,而POST
不是幂等的。PUT
调用一次与连续调用多次是等价的(即没有副作用),而连续调用多次POST
方法可能会有副作用,比如将一个订单重复提交多次。HTTP headers
Access-Control-Allow-Origin
Access-Control-Allow-Origin
响应头指定了该响应的资源是否被允许与给定的origin
共享。<origin>
:指定一个可以访问资源的URI。当设置为'*'
时,允许不需具备凭证(credentials)的请求有权限访问所有域的资源。Access-Control-Allow-Credentials
允许客户端携带验证信息,例如
cookies
,authorization headers
或TLS client certificates
。这样客户端在发起跨域请求的时候,就可以携带验证信息。Access-Control-Allow-Methods
该字段必需,它的值是逗号分隔的一个字符串,表明服务器支持的所有跨域请求的方法。注意,返回的是所有支持的方法,而不单是浏览器请求的那个方法。这是为了避免多次"预检"请求。
Access-Control-Allow-Headers
如果浏览器请求包括
Access-Control-Request-Headers
字段,则Access-Control-Allow-Headers
字段是必需的。它也是一个逗号分隔的字符串,表明服务器支持的所有头信息字段,不限于浏览器在"预检"中请求的字段。简单首部,如simple headers
、Accept
、Accept-Languae
、Content-Language
、Content-Type
它们始终是被支持的,不需要在这个首部特意列出。Access-Control-Max-Age
该字段可选,用来指定本次预检请求的有效期,单位为秒。在此期间,不用发出另一条预检请求。
Access-Control-Request-Headers
该字段是一个逗号分隔的字符串,指定浏览器
CORS
请求会额外发送的头信息字段Access-Control-Request-Method
用来列出浏览器的
CORS
请求会用到哪些HTTP
方法。The text was updated successfully, but these errors were encountered: