gpt4 book ai didi

amazon-web-services - 用于 lambda 函数中 api 键的 aws appsync 环境变量

转载 作者:行者123 更新时间:2023-12-04 04:10:21 24 4
gpt4 key购买 nike

我有使用 aws 放大来构建其后端的 React Web 应用程序。该后端包含一个带有 dynamodb 表作为数据源的 graphql api(由在我的 graphql 模式中声明的模型创建)和一个 lambda 函数,该函数从 3rd 方 api 获取信息并将结果保存到 dynamodb 表中以使其可用于应用程序。

按照本教程:

https://docs.amplify.aws/cli/function#graphql-from-lambda

我创建了运行“放大添加函数”命令的 lambda 函数。当我被问及 lambda 是否应该有权访问其他放大资源时,我回答"is",并且我为 lambda 提供了对我的 graphql api 的写入和更新访问权限,以便我可以从 lambda 执行突变。

当我完成创建过程时,amplify 通知我我在 lambda 中有两个可用的新环境变量:

API_<MY_APP>_GRAPHQLAPIENDPOINTOUTPUT
API_<MY_APP>_GRAPHQLAPIIDOUTPUT

然而,问题是我还需要 api key 才能执行更改(我的 graphql api 将“api key ”作为主要 id 方法)。

本教程使用 process.env.API_KEY。但是他们没有解释这个变量的来源,因为在我的情况下它的值是未定义的。

你知道如何让 api key 对我的 lambda 可用吗?

P.S.:硬编码不是一种选择,因为我有几个后端环境。

最佳答案

环境变量被称为 API_<APP_NAME>_GRAPHQLAPIKEYOUTPUT .仅当您为 GraphQL API 启用 API KEY 身份验证时才会出现。
以下是您为 Lambda 函数添​​加访问权限以访问 GraphQL API 时打印到控制台的示例:

You can access the following resource attributes as environment variables from your Lambda function
API_AMPLIFYTEST_GRAPHQLAPIENDPOINTOUTPUT
API_AMPLIFYTEST_GRAPHQLAPIIDOUTPUT
API_AMPLIFYTEST_GRAPHQLAPIKEYOUTPUT
此外,Amplify CLI 会在您的 Lambda 函数索引文件顶部生成一条注释,其中包含有用的 env var 列表。
我使用 Amplify CLI 版本 4.36.0 对此进行了测试。

关于amazon-web-services - 用于 lambda 函数中 api 键的 aws appsync 环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61844630/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com