如何使用Lambda函数查询Node.js中的GraphQL端点(AppSync)?我应该使用哪个GraphQL客户端?
我见过AWS AppSync JavaScript开发工具包,它似乎是针对移动应用或react/前端的。
PS:我不是在谈论AWS Lambda解析器。
发布于 2019-05-25 06:41:41
我们使用一个简单的https包来查询graphql。在这种情况下,您可能需要手动形成所有的graphql查询。如果你想使用处理自动发现和查询对象,你可以使用apollo-fetch客户端。简单的CURL也有效。
这里详细介绍了所有的方法。
https://blog.apollographql.com/4-simple-ways-to-call-a-graphql-api-a6807bcdb355
希望能有所帮助。
发布于 2019-05-26 06:22:40
如果您使用AWS_IAM或AMAZON_COGNITO_USER_POOLS作为身份验证类型,我认为AWS AppSync JavaScript SDK是一个很大的帮助,您只需按照here说明设置代码即可。
"use strict";
/**
* This shows how to use standard Apollo client on Node.js
*/
global.WebSocket = require('ws');
require('es6-promise').polyfill();
require('isomorphic-fetch');
// Require exports file with endpoint and auth info
const aws_exports = require('./aws-exports').default;
// Require AppSync module
const AUTH_TYPE = require('aws-appsync/lib/link/auth-link').AUTH_TYPE;
const AWSAppSyncClient = require('aws-appsync').default;
...此外,您还必须提供凭据
const AWS = require('aws-sdk');
AWS.config.update({
region: aws_exports.REGION,
credentials: new AWS.Credentials({
accessKeyId: aws_exports.AWS_ACCESS_KEY_ID,
secretAccessKey: aws_exports.AWS_SECRET_ACCESS_KEY
})
});
const credentials = AWS.config.credentials;或者只是检索Lambda会话凭证(不要忘记授予Lambda执行GraphQL应用程序接口的权限)。
https://stackoverflow.com/questions/56300077
复制相似问题