将 AWS Amplify iOS SDK REST API 添加到我的项目后,我遇到了问题。由于一个 Amplify 添加的文件(文件夹下的 *Client.swift)中有 3 个致命的编译器错误,我无法构建我的项目generated-src
,我不知道该怎么处理它们。
在利用 Drop-in UI 进行身份验证后,我的 iOS 应用程序一切顺利:我能够通过我预先存在的 Amazon Cognito 用户池登录。所以,事情进展顺利。
下一步,我想访问一个预先存在的 DynamoDB 表。似乎在 Amplify 上下文中执行此操作的方法是添加 REST API。
按照上面链接中的步骤,我知道 Amplify 通过创建自己的Cognito 用户池正在做我不希望它做的事情;我猜是因为我指定我想对经过身份验证的用户“限制 API 访问”。我所期望的是,我会根据我已经存在的Cognito 用户池而不是新的用户池来限制访问。
无论如何,这不是我眼前的问题。
发出 pod install --repo-update 命令后,我将新generated-src
文件夹添加到我的项目中。我觉得奇怪的是我awsconfiguration.json
的没有改变。那时,按照指示,我尝试构建项目,但由于这 3 个错误而无法这样做。
/Users/xxxxx/Dev/iOS/xxxxxxxxxx/generated-src/xxxxxxxxxxxClient.swift:148:34:
Cannot assign to property: 'endpoint' is a get-only property
/Users/xxxxx/Dev/iOS/xxxxxxxxxx/generated-src/xxxxxxxxxxxClient.swift:174:13:
Value of type 'xxxxxxxxxxxClient' has no member 'invokeHTTPRequest'
/Users/xxxxx/Dev/iOS/xxxxxxxxxxx/generated-src/xxxxxxxxxxxClient.swift:195:13:
Value of type 'xxxxxxxxxxxClient' has no member 'invokeHTTPRequest'
我无法进入下一步(认为这可能是导致这些错误的原因),因为我的项目的 Build Settings 选项卡没有显示 Objective-C Bridging Header 类别。(是的,我想?直到建成?)
有人可以帮我吗?