如何在自定义解析器 AWS Amplify CLI 中查询 API?

Posted

技术标签:

【中文标题】如何在自定义解析器 AWS Amplify CLI 中查询 API?【英文标题】:How to query to API in custom resolver AWS Amplify CLI? 【发布时间】:2021-06-08 09:53:45 【问题描述】:

我想使用graphql.schema 中定义的查询在我的自定义解析器中获取数据。可能吗?怎么查询?

【问题讨论】:

【参考方案1】:

我的解决方案:

    允许 lambda 解析器使用以下命令查询我的 API: amplify function update -> Lambda function -> <lambdaResolverfunctionName> -> Resource access permissions-> api -> Query 像典型的 graphQL 查询一样获取数据:
const myResolver = async (event) => 
  const endpoint = process.env.API_<apiName>_GRAPHQLAPIENDPOINTOUTPUT;
  const  authorization  = event.request.headers;
  const query = 'query ...';

  const response = await fetch(endpoint, 
    method: 'POST',
    headers: 
      'Content-Type': 'application/json',
      authorization
    ,
    body: query
  );

  const  data  = await response.json();

  return data;


有没有更好的方法来做到这一点?

【讨论】:

以上是关于如何在自定义解析器 AWS Amplify CLI 中查询 API?的主要内容,如果未能解决你的问题,请参考以下文章

AWS Amplify 自定义解析程序 - 不支持的操作“BatchPutItem”

aws amplify graphql 计算域内联解析器

如何将 AWS Amplify 控制台中的现有应用程序与 AWS Amplify CLI 连接?

AWS amplify add auth:如何在执行 amplify cli 后添加重定向登录 URI

如何使用 AWS/Amplify CLI 部署现有 Amplify 应用程序的新版本而无需用户交互?

使用 RDS 后端修改 AWS Amplify 中的解析器