当前位置: 首页 > 知识库问答 >
问题:

从VPC访问Api网关Api操作?

邹英发
2023-03-14

我试图弄清楚如何从运行在VPC中的lambda访问Api网关服务Api(也称为“管理Amazon Api网关”)。不,我不是试图在私有API中调用资源方法(我知道如何创建execute-apiVPC接口endpoint),只是调用AWS服务方法(get-api-key,FWIW,使用Python boto3客户机)。希望这是有意义的,很难清楚地表达这与如此多的“API”重载在这里。当前的尝试以超时失败,所以我认为这是与VPC相关的,但我不确定如何提供访问。我没有看到任何明显的endpoint类型会这样做。我已经看到了使用NAT网关获取额外VPC资源的参考,但我不清楚这将如何(或是否)应用。VPC配置了NAT网关,并且lambda的安全组允许所有出站流量,请参阅下面的配置。感谢任何建议。

NAT网关配置

共有1个答案

乜安志
2023-03-14

访问Amazon API网关控制平面APIendpoint需要访问Internet

如果没有NAT网关或其他类型的NAT设备,VPC中的Lambda功能无法访问Internet。查看如何在vpc中为Lambda函数提供internet访问权限?...或者在VPC外部提供Lambda函数(如果不需要在VPC内部)。Lambda函数在VPC外部提供,可以自动访问Internet。

 类似资料:
  • 我需要从endpoint获取一些数据,然后根据响应将这些数据存储到数据库中。

  • 早上好,你能帮我们解决下一个问题吗:我有一个API网关+Java Lambda处理程序。这个Lambda使用httpconnection获取一些Internet REST API。 当我们使用这个Lambda而不使用VPC时,它工作得很好。但当我们使用配置了internet访问的VPC时--有时Lambda会出现超时错误而失败。它在20%的请求中失败(80%的请求工作正常),下一个错误发生在日志中

  • 我需要调用不同于“.execute-api.amazonaws.com/”的endpoint吗?这些代码在VPC外部运行时也能正常工作。

  • 如何配置API将请求路由到NLB上的特定目标组?在VPC链接的集成点中,我只看到指定VPC链接和endpoint的选项。如果是endpoint,要路由到特定目标组的endpointURL的格式是什么? 还是我必须为每个微服务创建一个NLB?

  • 我的VPC中有Public和Pvt子网。我在Pvt子网上有一些运行在EC2上的服务,需要通过外部/移动资源访问。我如何做到这一点-是VPCLink和NLB的方式来做到这一点,还是任何其他方式,创建一些访问点在公共子网(??)。Lambda似乎是答案(现在AWS中几乎所有的东西)--甚至不确定那种访问对于Pvt子网中的资源是如何工作的。 同样,同一个Pvt子网可以访问外部资源(在AWS之外)-我如何

  • 我有一个aws lambda函数,它返回以下响应: 但是我在前端角度应用程序中得到以下误差。 CORS策略阻止从来源“HTTP://127.0.0.1:8080”访问位于“https://xxxxxxxxx.execute-api.us-east-1.amazonaws.com/dev/price”的XMLHttpRequest:对飞行前请求的响应没有通过访问控制检查:它没有HTTP ok状态。