您正在查看 Apigee X 說明文件。
查看
Apigee Edge 說明文件。
UnresolvedVariable
錯誤代碼
steps.httpmodifier.UnresolvedVariable
錯誤回應主體
{ "fault": { "faultstring": "HTTPModifier[policy_name]: unable to resolve variable [variable_name]", "detail": { "errorcode": "steps.httpmodifier.UnresolvedVariable" } } }
原因
如果 HTTPModifier 政策中指定的變數為下列任一情況,就會發生這項錯誤:
- 超出範圍 (在執行政策的特定流程中不可用),或
- 無法解析 (未定義)
診斷
找出發生錯誤的 HTTPModifier 政策,以及無法使用的變數名稱。您可以在錯誤回應的
faultstring
元素中找到這兩項項目。例如,在以下
faultstring
中,政策名稱為googleBook
,變數為var
:"faultstring": "HTTPModifier[googleBook]: unable to resolve variable var"
在失敗的 HTTPModifier 政策 XML 中,請確認所用變數的名稱與錯誤字串中指出的變數名稱相符 (上方步驟 1)。
判斷在執行 HTTPModifier 政策的流程中,變數是否已定義且可用。
如果變數為:
- 超出範圍 (在執行政策的特定流程中不可用),或
- 無法解析 (未定義)
則表示這是錯誤的原因。
請檢查變數是否在要求流程中,在 HTTPModifier 政策執行前執行的任何政策中定義。如果未定義變數,您會收到以下錯誤代碼:
steps.httpmodifier.UnresolvedVariable
解決方法
請確認政策中參照的變數存在,且可在執行 HTTPModifier 政策的特定流程中使用。