開發人員入口網站內部錯誤

您正在查看 Apigee Edge 說明文件。
查看 Apigee X 說明文件
資訊

問題

在開發人員入口網站使用 SmartDocs 發出即時 API 要求時發生錯誤。

錯誤訊息

開發人員入口網站常見錯誤訊息為「發生內部錯誤。請再試一次。」

可能原因

如果開發人員入口網站無法取得後端 (Smartdocs Proxy 或實際端點) 的回應,就可能會發生這個錯誤。

診斷

在瀏覽器中 啟用「開發人員工具」,然後查看網路分頁,找出實際錯誤。

下表列出常見錯誤及常見原因:

錯誤

常見原因

ERR_NAME_NOT_RESOLVED

SmartDocs Proxy 設定錯誤或網路防火牆限制

複合型內容

透過 HTTPS 設定入口網站、透過 HTTP 傳送的 SmartDocs 要求

500 - 內部伺服器錯誤

以下將逐一說明每個原因,並說明問題解決步驟。

SmartDocs Proxy 設定錯誤或網路防火牆限制

ERR_NAME_NOT_RESOLVED」訊息表示 Smartdocs Proxy 網址設定錯誤,或是存取入口網站的網路因防火牆限製而無法呼叫 Smartdocs Proxy 網址。Smartdocs Proxy 必須可透過網際網路或內部網路存取 (適用於內部 API)。

解析度

將 Smartdocs Proxy 部署至 Edge 上的「虛擬主機」,且該主機須可透過網際網路存取的主機名稱,確保 Smartdocs Proxy 可從所有必要的網路存取虛擬主機

透過 HTTPS 設定入口網站、透過 HTTP 接收 SmartDocs 要求

混合內容」錯誤表示有多少透過 HTTP 載入的頁面是透過 HTTP 呼叫 Smartdocs Proxy。

解析度

將 Smartdocs Proxy 透過 https 公開,即可解決問題。如要這麼做,請部署 Smartdocs Proxy,包含設定為使用 TLS/SSL 的「虛擬主機」 (通常是「安全」虛擬主機)。

SmartDocs Proxy 傳回例外狀況

「500 - 內部伺服器錯誤」訊息可能是「smartdocs Proxy」的問題所造成。此時,您會發現 Smartdocs Proxy 傳回這個錯誤。

診斷

使用追蹤記錄工具診斷「smartdocs」 Proxy 的錯誤,如下所述。詳情請參閱使用追蹤記錄工具

  1. 在「VALIDATE」機構中啟用「smartdocs」 Proxy 的追蹤記錄,找出傳回 500 內部伺服器錯誤的特定政策。

  1. 在追蹤記錄中選取特定政策,找出錯誤原因。

解析度

修正系統發現的錯誤。如需協助,請與 Apigee Edge 支援團隊聯絡。

邊緣訊息處理工具無法呼叫已發布的 API 端點

500 - 如果訊息處理器屬於代管 Smartdocs Proxy 的機構無法呼叫 API 端點,也會發生內部伺服器錯誤。

診斷

使用追蹤記錄工具診斷「smartdocs」 Proxy 的錯誤,如下所述。詳情請參閱使用追蹤記錄工具

  1. 在「VALIDATE」機構中,為「smartdocs」 Proxy 啟用「trace」,找出傳回 500 內部伺服器錯誤的特定政策。

  1. 在上方顯示的範例 UI 追蹤記錄中,您會看到 JavaScript 政策「BuildTargetAPIRequest」無法執行目標網址。
  1. 透過 JavaScript 政策「BuildTargetAPIRequest」取得目標網址。
  1. 直接透過與「VALIDATE」機構相關聯的訊息處理器節點傳送至該網址,如下所示:
    curl -v <target URL>
    
  1. 修正系統觀察到的錯誤。

解析度

  1. 確保可透過與「VALIDATE」機構相關聯的訊息處理器叫用在開發人員入口網站上發布的 API,並修正發生的所有錯誤。
  1. 如果能夠直接從訊息處理器執行 API 呼叫,則應該也能透過 SmartDocs 執行 API。
  1. 透過 SmartDocs 執行 API 呼叫,並確認問題是否已解決。