0

我是 Amplify 的新手,正在尝试使用它将 iOS 应用程序连接到我的 AWS 后端。在使用 AWSMobileClient 时,我之前编写了一个 lambda,并且可以正常运行。现在,我已将 AWSMobileClient 更改为 Amplify;虽然 Amplify 非常适合我的创建/变异/查询,但我特别需要将 lambda 函数作为 API 调用来调用。在遵循AWS 的 Amplify 配置 Lambda 解析器教程后,我的 amplify CLI 已正确管理我的 AppSync 和其他后端资源,以将现有 lambda 连接到 AppSync,在 AppSync 查询控制台中测试时正确触发。

我感到困惑的是我应该如何在 iOS 中使用 Amplify 来调用相关函数。虽然可以使用以下方法调用基于模型的模式元素,

Amplify.API.mutate(request: .create(amplifyUser)) { data in
      switch data {
      ...
      }
}

我不确定函数的等价物是什么。我的函数当前在模式文件中声明为

schema {
  query: Query
}

type Query {
  testLambdaFunction(id: String!, numResults: Int!): Events @function(name: "testLambdaFunction")
}
...

我试图使用 iOS 代码调用

Amplify.API.mutate(request: .init(apiName: "testLambdaFunction", document: [???], variables: ["id": eventId, "numResults": numResults], responseType: Events.self, decodePath: [???], options: [???])) { data in
            switch data {
            ...
            }
        }

任何有关如何正确调用函数的指导将不胜感激!

4

0 回答 0