Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » SQL Anywhere 服务器 - 编程 » HTTP Web 服务 » Web 服务参考

 

Web 服务错误代码参考

当请求失败时,HTTP 服务器会生成标准 Web 服务错误。这些错误被指派了符合协议标准的编号。

下面列出了一些可能遇到的典型错误:

编号 名称 SOAP 失败 说明
301 永久移走 Server 请求的页面已永久移走。服务器会自动将请求重定向到新的位置。
304 未修改 Server 根据请求中的信息,服务器已确定自上次请求后没有修改过请求的数据,因此无需将其再次发送。
307 临时重定向 Server 请求的页面已移动,但此更改不一定是永久性的。服务器会自动将请求重定向到新的位置。
400 错误请求 Client.BadRequest HTTP 请求不完整或者格式有误。
401 需要授权 Client.Authorization 使用该服务需要授权,但未提供有效的用户名和口令。
403 禁止 Client.Forbidden 您无权访问该数据库。
404 未找到 Client.NotFound 服务器上没有运行指定的数据库,或者指定的 Web 服务不存在。
408 请求超时 Server.RequestTimeout 接收请求时超出了连接空闲时间上限。
411 必需的 HTTP 长度 Client.LengthRequired 服务器要求客户端在请求中指定 Content-Length。通常在向服务器上载数据时发生这种情况。
413 实体太大 Server 请求超出允许的大小上限。
414 URI 太大 Server URI 的长度超出了允许的长度上限。
500 内部服务器错误 Server 发生内部错误。无法处理该请求。
501 未实现 Server

HTTP 请求方法不是 GET、HEAD 或 POST。

502 错误的网关 Server 所请求的文档位于第三方服务器上,并且服务器收到来自第三方服务器的错误。
503 服务不可用 Server 连接数超出允许上限。

如果 SOAP 服务失败,则这些失败消息以 SOAP 1.1 版标准中定义的 SOAP 失败消息的形式返回到客户端:

  • 如果处理请求的应用程序中的错误生成 SQLCODE,则将返回 faultcode 为 Client(还可能带有子类别,如 Procedure)的 SOAP 失败消息。SOAP 错误消息中的 faultstring 元素将设置为详细的错误说明,并且 detail 元素中会包含 SQLCODE 数字值。

  • 如果发生传输协议错误,faultcode 将设置为 Client 或 Server(具体取决于错误),faultstring 将设置为 HTTP 传输消息(如 [404 未找到]),并且详细信息元素中包含数字型的 HTTP 错误值。

  • 由于返回 SQLCODE 值的应用程序错误而生成的 SOAP 错误消息返回时带有 HTTP 状态 [200 OK]。

如果客户端无法被识别为 SOAP 客户端,相应的 HTTP 错误将返回到生成的 HTML 文档中。