0

我目前在我們的API網關中有多個資源的API,我正在爲同樣的Swagger UI頁面工作。API網關和Swagger用戶界面

很多我自己寫的swagger ui定義,雖然我知道有導出功能 - 它似乎還沒有100%準備好。

當使用從swagger的Try it out按鈕,如果我回到200,這是完美處理,結果如預期顯示。我想要顯示錯誤代碼,這是我卡住的地方。

在API網關我創造我Method response,包括一些允許頭401,這是被我Integration Response用於HTTP status regexUnauthorized.*的 - 這一內容只是被通過。

我招搖UI定義響應看起來是這樣的(特別是對於401):

"401": { 
"description": "Unauthorized", 
     "headers": { 
      "Access-Control-Allow-Origin": { 
      "type": "string" 
        } 
     } 
}, 

這只是期待一個字符串響應。爲了以防萬一,我的`產品'有一切需要。

"produces": ["application/json", 
      "text/json", 
      "application/xml", 
      "text/xml"], 

通過檢查的結果是正確的 - enter image description here

但是我昂首闊步仍然會產生這樣的:

enter image description here

我已經試過千頭萬緒,包括分配對象響應類型,改變我的正則表達式爲4 \ d {2}來捕獲任何400錯誤,更新定義產生 - 所有沒有運氣。

讓我知道是否有任何其他信息需要幫助。

回答

0

我假設你正在使用自定義授權人或Cognito授權人,這是什麼產生401?

不幸的是,有一個已知的限制,其中錯誤方法(如授權人的401或403)不包含配置的標頭映射。

+0

其他錯誤或響應怎麼樣(即500/429等)除了200,沒有其他響應產生(我只知道他們通過檢查頁面網絡發生) – Hexie

+0

* API網關產生的錯誤(例如500或429)將表現出相同的行爲。 –

+0

所以基本上你這樣說,除非200 - 我不會得到任何其他迴應這種情況? – Hexie