2017-07-31 87 views
0

我有一個Amazon API網關連接到AWS java Lambda後端。 我想添加一個新的方法到一個資源,當選擇新方法的積分點時,我得到以下錯誤。AWS功能策略大於限制

的錯誤是:

「功能的政策比限制較大,請手動更新通過拉姆達CLI政策。」

我該如何着手更新策略以及爲什麼會發生此錯誤?

非常感謝, 理查德

+0

相關:https://forums.aws.amazon.com/thread.jspa?messageID=716202 – jarmod

+0

我確實看到了,但我不知道這是什麼意思。我希望能有更好的解釋。我只通過GUI /網頁使用AWS。 – DevilCode

+0

AWS中的策略文檔通常具有大小限制。您需要尋找縮小文檔的方法。 – jarmod

回答

0

確定所建議的問題是與政策文件一個20KB的限制。你可以通過Cli獲得政策文件,但對我來說它沒有什麼幫助,除非有辦法覆蓋它,並且有一種方法來優化它,然後它很沒用。這表示可能有我無法找到它。

注意這是一個Lambda問題,在這種情況下不是API網關。總之,我有許多端點(〜30/50),對於API來說,這些端點並不常見,但是每個端點都需要在策略文檔中將Lambda代碼鏈接到API網關端點的相關幾行。在大約30到50個端點填寫政策文件。

可能有更好的方法來做到這一點....但在這個限制,即使我刪除了一些未使用的端點,它沒有幫助。解決方案是刪除Lambda函數代碼並重新創建它。

但是,這隻會清除策略文檔,直到您再次重新創建鏈接。爲了避免再次發生此問題,我必須將端點減少到核心端點,然後使用傳遞的參數在Lambda中觸發正確的代碼。

Instead of https://www.something.com/cars/iswindowopen 
    do 
    Instead of https://www.something.com/cars 
    { 
    "call":"iswindowopen" 
    } 

在排序中將許多端點作爲參數傳遞。這可能是我的錯,因爲沒有閱讀足夠的文檔,但這個限制隱藏在我的意見中,所以要小心=)