我正在使用AWS网络控制台。我正在尝试创建lambda函数来运行我的AppSync GraphQL API突变查询。我在网上看到了很多答案,但他们都试图先在本地机器上创建lambda,然后将其推到AWS云上。我不能遵循这个方法。我是直接工作在AWS网络控制台。
基本上,我在appsync graphql后面有一个dynamodb数据库表。我想使用lambda函数更新dynamoDB中的条目。要更新这个条目(在DynamoDB中),我需要在appsync graphql上运行一个突变查询。我想使用lambda函数来实现这一点。我想调用lambda的突变查询( appsync)。
请参见下面的lambda的node.js代码:
const appsync = require('aws-appsync');
const gql = require('graphql-tag');
require('cross-fetch/polyfill');
const graphqlClient = new appsync.AWSAppSyncClient({
url: 'APPSYNC_ENDPOINT_URL',
region: process.env.AWS_REGION,
auth: {
type: 'AWS_IAM',
credentials: {
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
sessionToken: process.env.AWS_SESSION_TOKEN
}
},
disableOffline: true
});
const mutation = gql`mutation Test($value: String!) {
test(value: $value)
}`;
await graphqlClient.mutate({
mutation,
variables: {
value: 'test'
}
});我正在犯错误:
"errorMessage": "Cannot find module 'aws-appsync'"
lambda函数试图使用aws-appsync,但无法找到它。如何在AWS控制台上“安装”这个包?我没有使用我的本地开发机器。我直接在web控制台上编写lambda函数.
如何仅使用web控制台在lambda中启用aws-appsync包?
发布于 2021-09-03 14:08:12
我觉得你做不到。您可以在本地环境中开发lambda,添加带有依赖项的package.json,压缩函数和node_modules,然后上传。
https://stackoverflow.com/questions/68208282
复制相似问题