0

在 CXML 中,如果发件人凭据不正确,那么在我的 cxml 中,我将其作为响应发送回 cXML 帖子的发件人:

<Status code="401" text="Unauthorized ">Credentials provided in the Request (the Sender element) were not recognized by the server.</Status>

根据 cXML,这是正确的。但是我还需要将我的 HTTP 状态码更改为 401 还是 200 OK 就足够了?

4

1 回答 1

2

正如cxml 用户指南中提到的那样, cxml 错误处理位于 http(传输层)错误消息之上,您可以将它们视为功能错误,因此您仍然使用 HTTP 200 进行回复

3.1.9.1 状态

由于在大多数情况下 cXML 位于 HTTP 之上,因此许多错误(例如 HTTP 404/Not Found)由传输处理。所有传输错误都应被视为暂时性错误,并且客户端应重试,就好像已收到 cXML 500 范围状态代码一样。所有不包含有效 cXML 内容的 HTTP 回复(包括 HTTP 404/未找到和 HTTP 500/内部服务器错误状态代码)都被视为传输错误。其他常见的传输问题包括超时、TCP 错误(例如“连接被拒绝”)和 DNS 错误(例如“主机未知”)。解析请求文档时的验证错误通常会导致 400 范围内的 cXML 永久错误,最好是 406/不可接受。

在你的情况下,你想回复

  • HTTP 200 / OK 答案
  • cXML 401 / 未经授权
于 2017-04-28T15:43:21.493 回答