开发者社区> 问答> 正文

PUT和POST都是给服务器发送新增资源,有什么区别?

PUT和POST都是给服务器发送新增资源,有什么区别?


【精品问答】前端面试手册

【精品问答】前端面试手册之网络编程篇

展开
收起
前端问答 2019-12-08 14:39:27 1136 0
1 条回答
写回答
取消 提交回答
  • 前端问答小助手

    PUT和POST⽅法的区别是,PUT⽅法是幂等的:连续调⽤⼀次或者多次的效果相同(⽆副作⽤),⽽POST⽅法是⾮幂等的。

    除此之外还有⼀个区别,通常情况下,PUT的URI指向是具体单⼀资源,⽽POST可以指向资源集合。

    举个例⼦,我们在开发⼀个博客系统,当我们要创建⼀篇⽂章的时候往往⽤ POST https://www.jianshu.com/articles , 这个请求的语义是,在articles的资源集合下创建⼀篇新的⽂章,如果我们多次提交这个请求会创建多个⽂章,这是⾮幂等的。

    ⽽ PUT https://www.jianshu.com/articles/820357430 的语义是更新对应⽂章下的资源(⽐如修改作者名称等),这个 URI指向的就是单⼀资源,⽽且是幂等的。

    2019-12-08 14:40:41
    赞同 1 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
如何运维千台以上游戏云服务器 立即下载
网站/服务器取证 实践与挑战 立即下载
ECS块储存产品全面解析 立即下载