相关疑难解决方法(0)

REST API服务为验证失败返回的适当HTTP状态代码是什么?

每当我在基于Django/Piston的REST API应用程序中遇到验证失败时,我目前正在返回401 Unauthorized .看过HTTP状态代码注册表后 我不相信这是验证失败的合适代码,你们都推荐什么?

  • 400错误请求
  • 401未经授权
  • 403禁止
  • 405方法不允许
  • 406不可接受
  • 412前提条件失败
  • 417期望失败
  • 422不可处理的实体
  • 424依赖失败

更新:上面的"验证失败"表示应用程序级别数据验证失败,即错误指定日期时间,虚假电子邮件地址等.

validation rest http-status-codes

373
推荐指数
5
解决办法
20万
查看次数

400对422对数据POST的响应

我正在尝试使用我正在处理的"类似REST"的API来确定在不同场景下返回的正确状态代码.假设我有一个终点允许以JSON格式进行POST'ing购买.它看起来像这样:

{
    "account_number": 45645511,
    "upc": "00490000486",
    "price": 1.00,
    "tax": 0.08
}
Run Code Online (Sandbox Code Playgroud)

如果客户向我发送"sales_tax"(而不是预期的"税收"),我应该返回什么.目前,我要回400.但是,我已经开始质疑自己了.我应该真的回来422吗?我的意思是,它是JSON(支持)并且它是有效的JSON,它只是不包含所有必需的字段.

rest http-status-codes

323
推荐指数
5
解决办法
25万
查看次数

从REST-ful服务中挑选HTTP状态代码以查找错误

当客户端调用我的REST-ful服务时,它需要知道响应是否来自"来自我",或者更确切地说是来自包含Web服务器的诊断是否发生了可怕的事情.

一种理论是,如果我的代码被调用,它应该总是返回一个HTTP OK(= 200),并且我必须返回的任何错误应该只在我返回的数据中表示.毕竟,这是我的代码获得响应,而不是裸浏览器.

有点不言而喻,如果我使用REST直接通过浏览器生成HTML读取,如果出现错误,我绝对必须返回错误代码.在我关心的情况下,它总是Javascript或Java来解释响应的内脏.

另一种可能性是存在一些HTTP状态代码系列,我可以高度放心地返回它/它们永远不会被周围容器中的问题生成.是这样的吗?

rest

15
推荐指数
1
解决办法
4492
查看次数

当域规则无效时,put方法上的rest服务的http响应代码是什么

使用PUT方法更新资源时返回的最合适的响应代码是什么,请求包含一些会使域规则无效的数据?

例如,客户资源必须指定名称.如果代理尝试在不提供名称的情况下发出PUT,我不想更新资源,并且我想告诉调用者他们需要提供名称.

什么HTTP响应代码?

rest

12
推荐指数
2
解决办法
6136
查看次数

定义状态代码

我正在为Web应用程序内部的第三方api(电子邮件套件)构建一个包装器,可以通过内部和自己的api访问.例如,这些方法将电子邮件地址和订阅列表作为参数并返回结果代码.

基本上我想:

定义状态代码以显示不同的成功/失败状态.

例如成功:

  • 新联系人已创建
  • 已创建新联系人并发送了optin邮件
  • 已创建新联系人并已发送优惠券
  • 订阅现有联系人
  • 现有联系人订阅和优惠券已发送
  • 等等..

所有这些情况基本上都是2xx类别,但必须触发不同的用户反馈消息,这就是我对使用HTTP状态代码感到不满意的原因.使用纯HTTP状态代码不能提供足够详细的反馈并定义a)附加状态代码或b)完全自定义状态代码感觉如此随机.

那么,去这里的最佳做法是什么?

这个答案表明我应该总是使用标准的HTTP状态代码,如果它们不适用,我的设计是错误的.如果不在客户端使用额外的逻辑和api调用,我如何区分差异?

api rest http response

1
推荐指数
1
解决办法
54
查看次数

标签 统计

rest ×5

http-status-codes ×2

api ×1

http ×1

response ×1

validation ×1