【问题标题】:Invoke a lambda function from my HTML code从我的 HTML 代码调用 lambda 函数
【发布时间】:2017-04-16 01:23:10
【问题描述】:

我写了一个 lambda 函数。现在我试图从我的 HTML 中调用它。我编写了一个调用它的 JavaScript 方法,但它不起作用。 我将此链接添加到我的 HTML 文件中

<script src="https://sdk.amazonaws.com/js/aws-sdk-2.6.10.min.js"></script>

我开始使用以下方法:

var AWS = require('aws-sdk');

这个调用不知何故失败了,我不知道为什么,也没有办法调试它。 你知道我错过了什么吗?

【问题讨论】:

    标签: javascript aws-lambda aws-sdk


    【解决方案1】:

    要在浏览器中实例化 AWS 对象,您不需要 require:

    var lambda = new AWS.Lambda();
    

    然后您可以invoke Lambda 函数(如果您已通过身份验证和授权)。

    注意:大多数情况下,将 Lambda 函数放在 API 网关后面并通过 REST 调用它更合适(API 网关可以为您的 API 生成客户端)。

    【讨论】:

      【解决方案2】:

      您还需要包含 sdk 脚本 -

      <script src="https://sdk.amazonaws.com/js/aws-sdk-2.139.0.min.js"></script>
      

      您可以在 AWS 文档中查看分步方法 -

      http://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/browser-invoke-lambda-function-example.html

      最后,如果您使用 API 网关,请不要忘记启用 CORS,以防您的 API 网关和站点域名不同,否则您会收到一些错误,例如 -

      Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://test123.ap-south-1.amazonaws.com/dev. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).
      

      【讨论】:

        猜你喜欢
        • 2015-01-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-13
        • 2016-02-29
        • 1970-01-01
        • 2017-05-27
        • 1970-01-01
        相关资源
        最近更新 更多