RESTful API 设计 - 响应 http 代码

珊瑚

我需要使用 POST 进行 2 个动作调用。

VerifyCerts不需要参数。在后端,它验证 2 个文件(之前上传的)是否正确。如果出现错误,我应该返回什么?我的意思是应该是 http 状态代码 4xx 还是 200 以及有关内容错误的信息?

ApllyCerts也不需要参数。它尝试应用已经上传的证书文件。出现错误(文件不正确)时我应该返回什么 4xx 代码?什么应该在响应体中?

无理之声

VerifyCerts不需要参数。在后端,它验证 2 个文件(之前上传的)是否正确。如果出现错误,我应该返回什么?我的意思是应该是 http 状态代码 4xx 还是 200 以及有关内容错误的信息?

请记住,HTTP 对“动作调用”一无所知。它了解资源以及资源的表示。但是实现细节是故意隐藏的。

在这里,听起来您有一个资源,该资源的表示是根据存储在服务器上的数据计算得出的。因此2xx,即使这两个文件当前“无效”,我也希望该响应带有代码。

(请求没有问题,服务器没有问题,您只是在记录当前世界状态与快乐路径不一致)。

ApllyCerts 也不需要参数。它尝试应用已经上传的证书文件。出现错误(文件不正确)时我应该返回什么 4xx 代码?什么应该在响应体中?

响应体是最简单的部分 -

除了响应 HEAD 请求时,服务器应该发送包含错误情况说明的表示,以及它是临时还是永久条件。

响应代码更难。我认为您可以为403 Forbidden409 Conflict提出合理的论据实际上,客户端的请求是尝试将资源从状态 A 带到状态 B,但实际上该资源当前处于状态 Z,该状态没有转换到状态 B。

在实践中,我认为这并不重要——默认情况下,这些响应代码都不是可缓存的,通用消费者没有任何特殊理由以不同方式处理这些代码,等等。语义上的区别在我看来没有任何实际影响。

因此,如果后来有人说服您更改使用的那个,我认为通用客户端的行为不会有任何不同。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

POST Restful API的响应代码400或403

来自分类Dev

设计RESTful API

来自分类Dev

如何使用 HTTP 响应状态代码配置 API 响应缓存?

来自分类Dev

Laravel RESTful API版本设计

来自分类Dev

如何使用内部以php RESTful API为中心的设计而不是HTTP请求

来自分类Dev

如何使用内部以php RESTful API为中心的设计而不是HTTP请求

来自分类Dev

Google Map api“路线”返回的HTTP响应代码:400

来自分类Dev

REST API 的响应是否应该包含 HTTP 结果代码?

来自分类Dev

REST API设计,RESTful API命名约定

来自分类Dev

RESTful HTTP API标准?

来自分类Dev

针对失败的密码设计401响应代码

来自分类Dev

RESTful API路由设计:嵌套与非嵌套

来自分类Dev

RESTful身份验证API设计

来自分类Dev

带有 CQRS 的 RESTful API 设计

来自分类Dev

RESTful设计,具有单个端点的多个响应

来自分类Dev

API响应Http状态代码和自定义错误代码映射

来自分类Dev

HTTP响应代码的Python异常

来自分类Dev

JavaScript上的HTTP响应代码

来自分类Dev

从网址获取http响应代码

来自分类Dev

AngularJs $ http超时响应代码

来自分类Dev

当上游提供程序失败时,在 RESTful api 中返回 HTTP 502 错误代码

来自分类Dev

Restful API与更少的HTTP请求

来自分类Dev

Laravel 5中的RESTful API响应

来自分类Dev

PHPUnit:使用die响应测试RestFul API

来自分类Dev

对于此API响应,哪种设计更好?

来自分类Dev

用于部分有效负载的RESTful服务响应代码

来自分类Dev

用于不良预先存在数据的 RESTful 响应代码?

来自分类Dev

服务器返回HTTP响应代码:403(适用于URL)Google Translate API

来自分类Dev

使用ABP框架的自定义API响应HTTP状态代码

Related 相关文章

热门标签

归档