当请求失败时,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 文档中。
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |