现在的项目api想用restful风格,然后目前的api接口返回规范:所有成功接口返回{status:200,msg:'',data:{}},出错接口返回{status:403,msg:'',data:{}},也就是只有200和403两种状态,我感觉不太对劲,搜了下网上的

200 OK - [GET]:服务器成功返回用户请求的数据,该操作是幂等的(Idempotent)。

201 CREATED - [POST/PUT/PATCH]:用户新建或修改数据成功。

202 Accepted - [*]:表示一个请求已经进入后台排队(异步任务)

204 NO CONTENT - [DELETE]:用户删除数据成功。

400 INVALID REQUEST - [POST/PUT/PATCH]:用户发出的请求有错误,服务器没有进行新建或修改数据的操作,该操作是幂等的。

401 Unauthorized - [*]:表示用户没有权限(令牌、用户名、密码错误)。

403 Forbidden - [*] 表示用户得到授权(与401错误相对),但是访问是被禁止的。

404 NOT FOUND - [*]:用户发出的请求针对的是不存在的记录,服务器没有进行操作,该操作是幂等的。

406 Not Acceptable - [GET]:用户请求的格式不可得(比如用户请求JSON格式,但是只有XML格式)。

410 Gone -[GET]:用户请求的资源被永久删除,且不会再得到的。

422 Unprocesable entity - [POST/PUT/PATCH] 当创建一个对象时,发生一个验证错误。

500 INTERNAL SERVER ERROR - [*]:服务器发生错误,用户将无法判断发出的请求是否成功。

我是否是要按照这样的规范根据不同的情况去返回状态码?比如get请求成功返回200,post请求成功返回201?而不是只要成功就返回200?话说这些状态码真的是写在返回值里吗?不是应该http协议里自动判定的吗?或者在返回的header里修改?这里很迷糊,希望大神解惑!

php返回200,关于API 使用 HTTP 状态码还是全部返回 200相关推荐

  1. API的HTTP状态码设计

    一.现状: 前天与后端开发人员讨论了API接口的设计.有以下三种方案: 1.原始HTTTP协议 HTTP状态码就是该Request的状态码,不应该与后端业务混在一起(这也是一部分人使用该方案的理由). ...

  2. 服务器返回的14种常见HTTP状态码

    tip:有问题或者需要大厂内推的+我脉脉哦:丛培森 ٩( 'ω' )و 当我们从客户端向服务器发送请求时 服务器向我们返回状态码 状态码就是告诉我们服务器响应的状态 通过它,我们就可以知道当前请求是成 ...

  3. HTTP状态码100、200、300、400、404、500、600……的含义

    1xx (临时响应)表示临时响应并需要请求者继续执行操作的状态代码. 100 (继续) 请求者应当继续提出请求. 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101 (切换协议) 请 ...

  4. HTTP状态码100、200、300、400、500、600的含义

    1xx (临时响应)表示临时响应并需要请求者继续执行操作的状态代码.  100 (继续) 请求者应当继续提出请求. 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分.  101 (切换协议) ...

  5. HTTP状态码100、200、300等含义

    1xx (临时响应)表示临时响应并需要请求者继续执行操作的状态代码. 100 (继续) 请求者应当继续提出请求. 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101 (切换协议) 请 ...

  6. SpringCloud工作笔记048---RESTful API 中 HTTP 状态码的定义_以及把RESTFul版本号_放到http协议header中_以及RestFul设计时的两个误区

    JAVA技术交流QQ群:170933152 ------------------------- RESTful架构有一些典型的设计误区. 最常见的一种设计错误,就是URI包含动词.因为"资源 ...

  7. HTTP常见状态码详解(200、403、404、500)

    状态码 一.概述 1xx 信息,表示临时响应并需要请求者继续执行操作 2xx 成功,操作被成功接收并处理 3xx 表示要完成请求,需要进一步操作. 通常,这些状态代码用来重定向 4xx 客户端错误,请 ...

  8. Http状态码大全(200、404、500等)

    基本涵盖了所有问题 HTTP 400 – 请求无效 HTTP 401.1 – 未授权:登录失败 HTTP 401.2 – 未授权:服务器配置问题导致登录失败 HTTP 401.3 – ACL 禁止访问 ...

  9. (网页)Http状态码大全(200、404、500等)(转CSDN)

    当我们从客户端向服务器发送请求时  服务器向我们返回状态码  状态码就是告诉我们服务器响应的状态  通过它,我们就可以知道当前请求是成功了还是出现了什么问题  状态码是由3位数字和原因短语组成的(比如 ...

最新文章

  1. mxGraph改变图形大小重置overlay位置
  2. Python_62面向对象
  3. Javascript的IE跟Firefox(火狐)兼容性-转
  4. Linux 学习 (一)
  5. SAP UI5 ConnectionManager
  6. rtl support
  7. python进阶之学习笔记_干货 | Python进阶系列之学习笔记(四)
  8. linux加密框架 crypto 算法管理 - 动态和静态算法管理
  9. 马云卸任阿里巴巴集团董事:传承计划执行完毕,换个江湖见!
  10. 2.企业安全建设入门(基于开源软件打造企业网络安全) --- 业务网纵深防御体系建设
  11. 爬虫入门到精通-headers的详细讲解(模拟登录知乎)
  12. 网页与多个服务器建立websoc,同一个页面怎么发起多个websocket
  13. 我的第一篇博客——鸡汤博
  14. xp访问计算机组提示没有权限,WindowsXP系统提示没有权限使用网络怎么办
  15. office基础操作
  16. CDR 2020永久序列号中文免费版更新详情教程
  17. 访问 github.com 的请求遭到拒绝您未获授权,无法查看此网页解决办法
  18. 新晋流量操盘手(一行) 探索百度贴吧高阶引流玩法
  19. Python | 小白的 Asyncio 教程
  20. 日语截图翻译软件(百度ocr+python3+pyqt5)

热门文章

  1. C语言成为大学必修课!想要不挂科?你只需要这样做
  2. 基于Hadoop架构下的FineBI大数据引擎技术原理
  3. C++实现自动发邮件代码,这个是用网易邮箱的。
  4. 获得磁盘的飞鸽传书描述信息
  5. 飞鸽传书局域网聊天工具
  6. ^_-诚征BLOG友情连接
  7. Python常见数据结构整理,分享给你们
  8. 给缺少Python项目实战经验的人,赶紧收藏!
  9. 那些你不知道的程序员的多重身份
  10. java system sleep_详解Java中的sleep()和wait()的区别