开发者门户内部错误

您正在查看的是 Apigee Edge 文档。
转到 Apigee X 文档
信息

问题

使用开发者门户中的 SmartDocs 发出实时 API 请求时出错。

错误消息

开发者门户上出现的常见错误是“发生内部错误。请重试您的请求”。

可能的原因

如果开发者门户无法从后端(smartdocs 代理或实际端点)获取响应,则可能会发生此错误。

诊断

在浏览器中 启用“开发者工具”,然后检查“网络”标签页,找到实际错误。

下表列出了常见错误及其常见原因:

错误

典型原因

ERR_NAME_NOT_RESOLVED

SmartDocs 代理配置错误或网络防火墙限制

混合内容

通过 HTTPS 配置的门户、通过 HTTP 的 SmartDocs 请求

500 - 内部服务器错误

下面我们将逐一介绍每种原因,并介绍解决相应问题的步骤。

SmartDocs 代理配置错误或网络防火墙限制

ERR_NAME_NOT_RESOLVED”消息表示 Smartdocs 代理网址配置错误,或者由于防火墙限制,用于访问门户的网络无法调用 smartdocs 代理网址。Smartdocs 代理必须可从互联网或内部网络(适用于内部 API)访问。

分辨率

将 smartdocs 代理部署到 Edge 上的虚拟主机(主机名可通过互联网访问),确保可以从所有必需的网络访问 smartdocs 代理。

通过 HTTPS 配置的门户、通过 HTTP 的 SmartDocs 请求

混合内容”错误表示从通过 HTTPS 加载的网页通过 HTTP 调用 smartdocs 代理。

分辨率

通过 https 公开 smartdocs 代理可以解决此问题。为此,您可以部署 Smartdocs 代理来包含一个配置为使用 TLS/SSL 的虚拟主机(通常是“安全”虚拟主机)。

SmartDocs 代理返回异常

500 - Internal Server Error 消息可能是由“smartdocs”代理的问题引起的。在这种情况下,您注意到 Smartdocs 代理会返回此错误。

诊断

使用“跟踪”工具诊断“smartdocs”代理的错误,如下所述。如需了解详情,请参阅使用跟踪工具

  1. 为“VALIDATE”组织中的“smartdocs”代理启用跟踪记录,以找到返回“500 内部服务器错误”的特定政策。

  1. 选择跟踪记录中的特定政策以确定错误的原因。

分辨率

修正发现的错误。如果您需要帮助,请与 Apigee Edge 支持团队联系。

Edge Message Processors 无法调用已发布的 API 端点

500 - 如果属于托管 Smartdocs 代理的组织的消息处理器无法调用 API 端点,也可能会发生内部服务器错误。

诊断

使用“跟踪”工具诊断“smartdocs”代理的错误,如下所述。如需了解详情,请参阅使用跟踪工具

  1. 为“VALIDATE”组织中的“smartdocs”代理启用 trace,以找到返回 500 内部服务器错误的特定政策。

  1. 在上面显示的示例界面跟踪记录中,可以看到 JavaScript 政策“BuildTargetAPIRequest”无法执行目标网址。
  1. 从 JavaScript 政策“BuildTargetAPIRequest”中获取目标网址。
  1. 从与“VALIDATE”组织关联的消息处理器节点直接调用该网址,如下所示:
    curl -v <target URL>
    
  1. 更正观察到的任何错误。

分辨率

  1. 确保可以从与 VALIDATE 组织关联的消息处理器调用在开发者门户上发布的 API,并更正遇到的任何错误。
  1. 如果您能够直接从消息处理器执行 API 调用,那么您也应该能够通过 SmartDocs 执行 API 调用。
  1. 通过 SmartDocs 执行 API 调用,并检查问题是否已解决。