运行时错误目录

本页面适用于 ApigeeApigee Hybrid

查看 Apigee Edge 文档。

Apigee 中的错误

通过 Apigee 发出 API 请求时,Apigee 组件路由器和消息处理器或后端服务器可以向客户端应用返回错误。

消息处理器中的错误

消息处理器是 Apigee 的核心组件,用于处理政策并与后端服务器交互。如果它检测到任何问题,就会返回错误,例如:

  • 网络连接问题、TLS 握手失败、后端服务器不可用、与后端服务器通信期间无响应
  • 政策执行期间失败
  • HTTP 标头/编码/路径无效、不遵循 HTTP 规范、超出产品限制等:
    • 由客户端应用发送的 HTTP 请求
    • OR

    • 由后端服务器发送的 HTTP 响应
  • 其他

消息处理器中的错误示例

消息处理器始终返回 HTTP 状态代码,后跟错误消息以及 JSON 格式的错误代码,如下所示:

客户端应用获取如下所示的响应代码:

  HTTP/1.1 504 Gateway Timeout

消息处理器的错误响应采用以下格式:

{
  "fault": {
    "faultstring": "Gateway Timeout",
    "detail": {
      "errorcode": "messaging.adaptors.http.flow.GatewayTimeout"
      "reason": "TARGET_READ_TIMEOUT"
    }
  }
}

错误响应中的字段说明

字段 说明
faultstring 包含描述错误消息可能原因的错误消息
errorcode 与错误关联的错误代码(也称为故障代码
reason 包含一条消息,指示错误的可能原因

运行时错误目录

此错误目录提供您需要了解的有关 Apigee 消息处理器组件返回的运行时错误代码(针对非政策错误)的所有信息。对于每个错误代码,它包含以下信息:

  • HTTP 状态代码
  • 错误消息
  • 错误原因(并非所有错误消息都会显示 reason
  • 错误的可能原因
  • 任何相关的 HTTP 规范和/或产品限制
  • 手册和视频,其中包含诊断错误原因的说明以及可用于自行解决错误的有效解决方案(如果有)
  • 可以用来自行解决错误的修复

涵盖以下错误代码类别:

使用下面的搜索框过滤表格,以显示特定错误代码的上述信息。您可以搜索状态代码或表内任意字段中的任何内容。

错误代码 说明 修复

flow.*

flow.APITimedOut

  • HTTP 状态代码:
504 Gateway Timeout
  • 错误消息
API timed out
  • 可能的原因:

在以下情况下,会发生此错误:

  • 后端服务器在特定 API 代理的属性 api.timeout 配置的超时期限内不会做出响应。
  • 由于计算密集型操作、高负载或性能不佳,政策需要很长时间。

flow.SharedFlowNotFound

  • HTTP 状态代码:
500 Internal Server Error
  • 错误消息
Shared Flow {shared_flow_name} Not Found
  • 可能的原因:

如果特定的共享流存在以下情况,则会出现此错误:

  • 不存在
  • OR

  • 已存在,但未部署

messaging.adaptors.http.flow

messaging.adaptors.http.flow.DecompressionFailureAtRequest

  • HTTP 状态代码:
400 Bad Request
  • 错误消息
Decompression failure at request
  • 原因:

CLIENT_READ_CONTENT_NOT_IN_GZIP_FORMAT

  • 可能的原因:

仅在以下情况下,会发生此错误:

  • HTTP 请求标头 Content-Encoding 中指定的编码有效且受 Apigee 支持。
  • 但是

  • 客户端作为 HTTP 请求的一部分发送的载荷格式与 Content-Encoding 标头中指定的编码格式不匹配

messaging.adaptors.http.flow.DecompressionFailureAtResponse

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
Decompression failure at response
  • 原因:

TARGET_READ_CONTENT_NOT_IN_GZIP_FORMAT

TARGET_READ_INCORRECT_HEADER_CHECK

  • 可能的原因:

仅在以下情况下,会发生此错误:

  • 在后端/目标服务器的 HTTP 响应标头 Content-Encoding 中指定的编码有效且受 Apigee 支持。
  • 但是

  • 后端/目标服务器作为 HTTP 响应的一部分发送的载荷格式与 Content-Encoding 标头中指定的编码格式不匹配

messaging.adaptors.http.flow.ErrorResponseCode

  • HTTP 状态代码:
500

  • 错误消息
错误消息和格式可能因后端服务器实现而异。
  • 可能的原因:
如果后端服务器向 Apigee 返回状态代码 500,则会出现此错误。
  • HTTP 状态代码:
503
  • 错误消息
错误消息和格式可能因后端服务器实现而异。
  • 可能的原因:
如果后端服务器向 Apigee 返回状态代码 503,则会出现此错误。
  • HTTP 状态代码:
504
  • 错误消息
错误消息和格式可能因后端服务器实现而异。
  • 可能的原因:
如果后端服务器向 Apigee 返回状态代码 504,则会出现此错误。

注意:在发送到客户端应用的错误消息中,系统不会返回错误代码 messaging.adaptors.http.flow.ErrorResponseCode。这是因为每当后端服务器响应错误以及任何 4XX5XX 状态代码时,Apigee 都会设置此错误代码。您可以在 API Monitoring 或分析数据库中查看此错误代码。

messaging.adaptors.http.flow.GatewayTimeout

  • HTTP 状态代码:
504 Gateway Timeout
  • 错误消息
Gateway Timeout
  • 原因:
TARGET_READ_TIMEOUT
  • 可能的原因:
如果后端服务器未在消息处理器上配置的 I/O 超时期限内响应 Apigee 消息处理器,则会出现此错误。

messaging.adaptors.http.flow.LengthRequired

  • HTTP 状态代码:
411 Length Required
  • 错误消息
'Content-Length' is missing
  • 原因:
CLIENT_REQUEST_CONTENT_LENGTH_REQUIRED
  • 可能的原因:

如果客户端应用未将 Content-Length 标头作为发送到 Apigee 的 HTTP POSTPUT 请求的一部分进行传递,则会发生此错误。

注意:无法在跟踪工具中捕获因此错误而失败的请求,因为消息处理器在非常早的阶段(远早于处理请求并在 API 代理中执行任何政策之前)执行此验证。

  • HTTP 规范
RFC 第 3.3.2 节:内容长度

修复

要解决此错误,请执行以下步骤:

  1. 确保客户端应用始终将标头 Content-Length 作为 HTTP POSTPUT 请求的一部分传递给 Apigee。例如:

    
    curl -X POST https://HOSTALIAS/PATH -d '{"name": "abc"}' -H "Content-Length: 15"
    
  2. 即使您使用 POSTPUT 请求传递空载荷,请确保传递标头 Content-Length: 0。例如:

    
    curl -X POST https://HOSTALIAS/PATH -H "Content-Length: 0"
    

messaging.adaptors.http.flow.NoActiveTargets

  • HTTP 状态代码:
503 Service Unavailable
  • 错误消息
The Service is temporarily unavailable
  • 原因:

TARGET_HEALTHCHECK_CONNECT_TIMEOUT

TARGET_HEALTHCHECK_CONNECTION_REFUSED

TARGET_HEALTHCHECK_HTTPS_REQUEST_OVER_HTTP

TARGET_HEALTHCHECK_UNEXPECTED_EOF

  • 可能的原因:

如果您在 Apigee 中使用 TargetServer,则在以下情况下会出现此错误:

  1. 自定义授权服务器对后端服务器主机的 DNS 解析不正确,导致 IP 地址错误,进而导致连接错误。
  2. 连接超时错误原因如下:
    1. 后端服务器上的防火墙限制会阻止 Apigee 连接到后端服务器。
    2. Apigee 和后端服务器之间的网络连接问题。
  3. TargetServer 中指定的主机不正确或包含不需要的字符(例如空格)。
如果配置为监控目标服务器的健康检查的健康检查失败,也可能会发生此错误。

messaging.adaptors.http.flow.RequestTimeOut

  • HTTP 状态代码:
408 Request Timeout
  • 错误消息
Request timed out
  • 原因:
CLIENT_READ_TIMEOUT
  • 可能的原因:
如果 Apigee 消息处理器在消息处理器组件上配置的 I/O 超时期限内没有从客户端应用接收到请求载荷,则会出现此错误。

修复

确保客户端应用在 Apigee 消息处理器组件上配置的 I/O 超时期限内发送请求载荷。

messaging.adaptors.http.flow.ServiceUnavailable

  • HTTP 状态代码:
503 Service Unavailable
  • 错误消息
The Service is temporarily unavailable
  • 原因:

TARGET_CONNECT_TIMEOUT

TARGET_WRITE_BROKEN_PIPE

TARGET_WRITE_CONNECTION_RESET_BY_PEER

TARGET_CONNECT_CONNECTION_REFUSED

  • 可能的原因:

在以下情况下,会发生此错误:

  1. 自定义授权服务器对后端服务器主机的 DNS 解析不正确,导致 IP 地址错误,进而导致连接错误。
  2. 连接超时错误原因如下:
    1. 后端服务器上的防火墙限制会阻止 Apigee 连接到后端服务器。
    2. Apigee 和后端服务器之间的网络连接问题。
  3. 目标端点中指定的目标服务器主机不正确或包含不需要的字符(例如空格)。
如果后端服务器在请求处理器仍在向后端服务器发送请求载荷时过早关闭连接,也可能会出现此错误。

messaging.adaptors.http.flow.SslHandshakeFailed

  • HTTP 状态代码:
503 Service Unavailable
  • 错误消息
SSL Handshake failed {error_message}
  • 可能的原因:

在以下情况下,在 Apigee 的消息处理器和后端服务器之间的 SSL 握手过程中会出现此错误:

  1. Apigee 的消息处理器的信任库:
    • 包含与后端服务器的完整证书链不匹配的证书链
    • OR

    • 不包含后端服务器的完整证书链
  2. 后端服务器提供的证书链:
    • 包含与目标端点中指定的主机名不匹配的完全限定域名 (FQDN)
    • OR

    • 包含的证书链不正确/不完整

messaging.adaptors.http.flow.UnexpectedEOFAtTarget

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
Unexpected EOF at target
  • 原因:
TARGET_READ_UNEXPECTED_EOF
  • 可能的原因:

在以下情况下,会发生此错误:

  1. TargetServer 未正确配置为支持 Apigee 中的 TLS/SSL 连接。
  2. 当 Apigee 等待后端服务器的响应时,后端服务器可能会突然关闭连接。
  3. Apigee 和后端服务器上的 keep-alive 超时配置不正确。

messaging.runtime.*

messaging.runtime.RouteFailed

  • HTTP 状态代码:
500 Internal Server Error
  • 错误消息
Unable to route the message to a TargetEndpoint
  • 可能的原因:

如果 Apigee 无法将请求路由到任何 TargetEndpoint,则会发生此错误,原因如下:

  • 代理中没有与请求匹配的路由规则 (<RouteRule>) 条件
  • ProxyEndpoint 中没有定义默认路由规则(即没有任何条件的 <RouteRule>

修复

要解决此错误,请按照以下说明操作:

  1. 查看 ProxyEndpoint 中定义的路由规则并进行修改,以确保至少有一个路由规则条件与您的请求相匹配。
  2. 如果存在多个 RouteRule,则建议您定义一个不带任何条件的默认路由规则。
  3. 确保默认路由规则始终在条件路由列表中最后定义,因为规则是在 ProxyEndpoint 中自上而下进行评估的。

如需详细了解如何在 ProxyEndpoint 中定义 <RouteRule> 条件,请参阅条件目标

protocol.http.* - Caused due to bad request

protocol.http.BadFormData

  • HTTP 状态代码:
500 Internal Server Error
  • 错误消息
Bad Form Data
  • 可能的原因:

当且仅当满足以下所有条件时,会出现此错误:

  1. 客户端向 Apigee 发送的 HTTP 请求包含:
    • Content-Type: application/x-www-form-urlencoded
    • 带有百分号 (%) 或百分号 (%) 后跟无效的十六进制字符的表单数据,这些字符根据表单 - 第 17.13.4.1 节是不允许的。
  2. Apigee 中的 API 代理会读取特定表单参数,其中包含请求流中使用 ExtractVariables 或 AssignMessage 政策不允许使用的任何字符。

protocol.http.DuplicateHeader

  • HTTP 状态代码:
400 Bad Request
  • 错误消息
Duplicate Header "{header_name}"
  • 可能的原因:
如果特定 HTTP 标头不允许在 Apigee 中包含重复项,并且它作为客户端应用发送到 Apigee 的 HTTP 请求的一部分出现相同或不同的值,则会出现此错误。
  • HTTP 规范
RFC 7230 第 3.2.2 节:字段顺序

protocol.http.EmptyHeaderName

  • HTTP 状态代码:
400 Bad Request
  • 错误消息
Header name cannot be empty
  • 可能的原因:
如果客户端应用作为 HTTP 请求的一部分发送到 Apigee 的标头名称为空,则会发生此错误。
  • HTTP 规范
RFC 7230 第 3.2 节:标头字段

修复

确保客户端应用发送到 Apigee 的 HTTP 请求始终包含符合“RFC 7230 第 3.2 节:标头字段”的有效标头名称。

protocol.http.HeaderNameWithNonAsciiChar

  • HTTP 状态代码:
400 Bad Request
  • 错误消息
Header {header_name} contains non ascii character {character}
  • 可能的原因:
如果客户端应用作为 HTTP 请求的一部分发送到 Apigee 的标头名称包含非 ASCII 字符,则会发生此错误。
  • HTTP 规范

“RFC 7230 第 3.2 节:标头字段”“RFC 7230 第 3.2.6 节:字段值组成部分”

修复

确保发送到 Apigee 的客户端 HTTP 请求在标头名称中包含非 ASCII 字符(如“RFC 7230 第 3.2.6 节:字段值组成部分”所述)。

protocol.http.HeaderWithInvalidChar

  • HTTP 状态代码:
400 Bad Request
  • 错误消息
Header {header_name} contains invalid character {character}
  • 可能的原因:
如果客户端应用作为 HTTP 请求的一部分发送到 Apigee,但标头名称包含无效字符(如等于 (=)、英文逗号 (,)、分号 (;)、制表符、CRLF 和换行符),则会发生此错误。
  • HTTP 规范

“RFC 7230 第 3.2 节:标头字段”“RFC 7230 第 3.2.6 节:字段值组成部分”

修复

确保客户端应用发送到 Apigee 的 HTTP 请求在标头名称中不包含任何无效字符,如“RFC 7230 第 3.2.6 节:字段值组成部分”所述

protocol.http.NoResolvedHost

  • HTTP 状态代码:
503 Service Unavailable
  • 错误消息

Unable to resolve host {hostname}

其中:{hostname} 是动态的,其值将根据提供的主机名而变化。

  • 原因:
TARGET_CONNECT_HOST_NOT_REACHABLE
  • 可能的原因:
如果指定的目标服务器主机不正确或包含不需要的字符(例如空格),则会发生此错误。

protocol.http.InvalidPath

  • HTTP 状态代码:
400 Bad Request
  • 错误消息
Invalid path {path}
  • 可能的原因:
如果客户端应用发送到 Apigee 的 HTTP 请求网址中的路径包含不符合规范“RFC 3986 第 3.3 部分:路径”的字符,则会出现此错误。
  • HTTP 规范

RFC 3986 第 3 节:语法组成部分 RFC 3986,第 3.3 节:路径

修复

确保客户端应用发送到 Apigee 的 HTTP 请求网址中的路径不包含不允许的任何字符,如“RFC 3986 第 3.3 节:路径”所述。

protocol.http.TooBigBody

  • HTTP 状态代码:
413 Request Entity Too Large
  • 错误消息
Body buffer overflow
  • 可能的原因:
如果客户端应用作为 HTTP 请求的一部分发送到 Apigee 的载荷大小大于 Apigee 中允许的限制,则会发生此错误。
  • 此政策具有以下限制:
Apigee 限制

protocol.http.TooBigHeaders

  • HTTP 状态代码:
431 Request Header Fields Too Large
  • 错误消息
request headers size exceeding {limit}
  • 可能的原因:
客户端应用作为 HTTP 请求的一部分发送到 Apigee 的所有请求标头的总大小大于 Apigee 中允许的限制。
  • HTTP 规范
RFC 6585 第 5 节:431 请求标头字段过大
  • 此政策具有以下限制:
Apigee 限制

protocol.http.TooBigLine

  • HTTP 状态代码:
414 Request-URI Too Long
  • 错误消息
request line size exceeding {limit}
  • 可能的原因:
如果客户端应用作为 HTTP 请求的一部分发送到 Apigee 的请求行大小大于 Apigee 中允许的限制,则会发生此错误。
  • 此政策具有以下限制:
Apigee 限制

protocol.http.UnsupportedEncoding

  • HTTP 状态代码:
415 Unsupported Media
  • 错误消息
Unsupported Encoding "{encoding}"
  • 可能的原因:
如果客户端在 HTTP 响应中发送的 Content-Encoding 标头包含 Apigee 不支持的编码/载荷格式,则会发生此错误。
  • HTTP 规范
RFC 7231 第 6.5.13 节:415 不支持的媒体类型

protocol.http.* - Caused by target

protocol.http.BadPath

  • HTTP 状态代码:
500 Internal Server Error
  • 错误消息
Invalid request path
  • 可能的原因:
如果后端服务器的请求网址(由流变量 target.url 表示)包含以问号 (?) 开头(而非转发斜杠 (/))的路径(这种情况无效),就会出现此错误。
  • HTTP 规范

RFC 3986 第 3 节:语法组成部分 RFC 3986,第 3.3 节:路径

protocol.http.DuplicateHeader

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
Duplicate Header "{header_name}"
  • 可能的原因:
如果 Apigee 中不允许重复的特定 HTTP 标头在后端服务器发送到 Apigee 的 HTTP 响应中多次出现且具有相同或不同的值,则会发生此错误。
  • HTTP 规范
RFC 7230 第 3.2.2 节:字段顺序

protocol.http.EmptyHeaderName

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
Header name cannot be empty
  • 可能的原因:
如果后端服务器作为 HTTP 响应的一部分发送到 Apigee 的标头名称为空,则会发生此错误。
  • HTTP 规范
RFC 7230 第 3.2 节:标头字段

修复

确保后端服务器发送到 Apigee 的 HTTP 响应始终包含符合“RFC 7230 第 3.2 节:标头字段”的有效标头名称。

protocol.http.EmptyPath

  • HTTP 状态代码:
500 Internal Server Error
  • 错误消息
Request path cannot be empty
  • 可能的原因:
如果后端服务器的 HTTP 请求网址(由流变量 target.url 表示)包含空路径,则会发生此错误。
  • HTTP 规范

RFC 3986 第 3 节:语法组成部分 RFC 3986,第 3.3 节:路径

protocol.http.HeaderNameWithNonAsciiChar

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
Header {header_name} contains non ascii character {character}
  • 可能的原因:
如果后端服务器作为 HTTP 响应的一部分发送到 Apigee Edge 的标头名称包含非 ASCII 字符,则会发生此错误。
  • HTTP 规范

“RFC 7230 第 3.2 节:标头字段”“RFC 7230 第 3.2.6 节:字段值组成部分”

修复

确保发送到 Apigee 的后端服务器的 HTTP 响应不包含标头名称中的非 ASCII 字符,如“RFC 7230 第 3.2.6 节:字段值组成部分”所述。

protocol.http.HeaderWithInvalidChar

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
Header {header_name} contains invalid character {character}
  • 可能的原因:
如果后端服务器在 HTTP 响应中发送的标头名称包含等号 (=)、英文逗号 (,)、分号 (;)、制表符、CRLF 和换行符等字符,则会出现此错误。
  • HTTP 规范

“RFC 7230 第 3.2 节:标头字段”“RFC 7230 第 3.2.6 节:字段值组成部分”

修复

确保发送到 Apigee 的后端服务器的 HTTP 响应不包含标头名称中的任何无效字符,如“RFC 7230 第 3.2.6 节:字段值组成部分”所述

protocol.http.ProxyTunnelCreationFailed

  • HTTP 状态代码:
503 Service Unavailable
  • 错误消息
Proxy refused to create tunnel with response status {status code}
  • 可能的原因:

由于防火墙、ACL(访问控制列表)、DNS 问题、后端服务器的可用性等,代理服务器在 Apigee 和后端服务器之间创建隧道时,会发生此错误。

注意:错误消息 (faultstring) 中的状态代码提供了导致此问题的简要原因。

protocol.http.Response306Reserved

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
Response Status code 306 is reserved, so can't be used.
  • 可能的原因:

如果后端服务器将 306 状态代码返回给 Apigee,则会发生此错误。

306 状态代码是在旧版 HTTP 规范中定义的。根据当前的 HTTP 规范,此代码已预留,不应使用。

  • HTTP 规范
RFC 7231 第 6.3.5 节:预留 306

修复

由于状态代码 306 已被预留,因此请确保您的后端服务器在向 Apigee 发送响应时不使用此状态代码。

protocol.http.Response405WithoutAllowHeader

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
Received 405 Response without Allow Header
  • 可能的原因:
后端服务器返回 405 Method Not Allowed 状态代码,而不使用“允许”标头。
  • HTTP 规范

<aclass="external" l10n-attrs-original-order="href,class" l10n-encrypted-href="/PX9CewVbrdUzMVvoYtlcBAwphnODeWOvXeTBxkC1LyzyiBQ4MLFas/WazvgBhY96P0r5T0X7fdSVJ/HtE3Jxg=="> RFC 7231, section 6.5.5: 405 Method Not Allowed and RFC 7231, section 7.4.1: Allow</aclass="external">

protocol.http.ResponseWithBody

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
Received {status_code} Response with message body
  • 可能的原因:

如果从后端服务器到 Apigee 的 HTTP 响应是 204 No Content205 Reset Content,但它包含响应正文和/或以下一个或多个标头,则会发生此错误:

  • Content-Length
  • Content-Encoding
  • Transfer-Encoding
  • HTTP 规范

RFC 7231 第 6.3.5 节:204 无内容RFC 7231 第 6.3.6 节:205 重置内容

protocol.http.TooBigBody

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
Body buffer overflow
  • 可能的原因:
如果客户端应用作为 HTTP 请求的一部分发送到 Apigee 的载荷大小大于 Apigee 中允许的限制,则会发生此错误。
  • 此政策具有以下限制:
Apigee 限制

protocol.http.TooBigHeaders

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
response headers size exceeding {limit}
  • 可能的原因:
如果后端服务器作为对 Apigee 的 HTTP 响应的一部分发送的所有响应标头的总大小大于 Apigee 中允许的限制,则会发生此错误。
  • 此政策具有以下限制:
Apigee 限制

protocol.http.TooBigLine

  • HTTP 状态代码:
502 Bad Gateway
  • 错误消息
response line size exceeding {limit}
  • 可能的原因:
如果后端服务器作为 HTTP 响应的一部分发送到 Apigee 的响应行大小大于 Apigee Edge 中允许的限制,则会发生此错误。
  • 此政策具有以下限制:
Apigee 限制

protocol.http.UnsupportedEncoding

  • HTTP 状态代码:
415 Unsupported Media
  • 错误消息
Unsupported Encoding "{encoding}"
  • 可能的原因:
如果后端服务器作为 HTTP 响应的一部分发送的 Content-Encoding 标头包含 Apigee 不支持的编码/载荷格式,则会发生此错误。
  • HTTP 规范
RFC 7231 第 6.5.13 节:415 不支持的媒体类型

security.util.*

security.util.KeyAliasNotFound

  • HTTP 状态代码:
500 Internal Server Error
  • 错误消息
KeyAlias {KeyAlias_name} is not found in Keystore {Keystore_Name}
  • 可能的原因:

如果 TargetEndpoint 或 TargetServer 中引用的特定 KeyAlias 在特定密钥库中找不到,则会发生此错误。

修复

确保 TargetEndpoint 或 TargetServer 中指定的 KeyAlias 存在且属于特定密钥库。

security.util.TrustStoreWithNoCertificates

  • HTTP 状态代码:
500 Internal Server Error
  • 错误消息
TrustStore {truststore_name} has no certificates
  • 可能的原因:

如果 TargetEndpoint 或 TargetServer 中引用的特定信任库不包含任何证书,则会发生此错误。

修复

如果您要验证后端服务器的证书,并且希望在 TargetEndpoint 或 TargetServer 中使用信任库,请确保信任库包含后端服务器的有效证书。