2017-07-31 84 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" 
    } 

在排序中将许多端点作为参数传递。这可能是我的错,因为没有阅读足够的文档,但这个限制隐藏在我的意见中,所以要小心=)