iOS AWS AppSync 401 IAM+;白兰地
您好,我正在使用AWS AppSync作为后端graphQL db。 我使用Cognito来管理登录、用户和身份验证。 我正在使用IAM管理身份规则和来宾用户 这是我的初始化代码:iOS AWS AppSync 401 IAM+;白兰地,ios,amazon-cognito,amazon-iam,aws-appsync,aws-appsync-ios,Ios,Amazon Cognito,Amazon Iam,Aws Appsync,Aws Appsync Ios,您好,我正在使用AWS AppSync作为后端graphQL db。 我使用Cognito来管理登录、用户和身份验证。 我正在使用IAM管理身份规则和来宾用户 这是我的初始化代码: let appSyncConfig = try AWSAppSyncClientConfiguration(appSyncServiceConfig: AWSAppSyncServiceConfig(), credentialsProvider: AWSMobileClient.default(),
let appSyncConfig = try AWSAppSyncClientConfiguration(appSyncServiceConfig: AWSAppSyncServiceConfig(),
credentialsProvider: AWSMobileClient.default(),
cacheConfiguration: AWSAppSyncCacheConfiguration())
// Initialize the AWS AppSync client
let appSyncClient = try AWSAppSyncClient(appSyncConfig: appSyncConfig)
appSyncClient.apolloClient?.cacheKeyForObject = { $0["id"] }
注意:我使用默认配置,因为所有必需的信息都在awsconfiguration.json
文件中
我使用cognito的以下功能注册用户:
AWSCognitoIdentityUserPool.signUp
然后进行电话号码验证,完成后我使用AWSMobileClient登录:
AWSMobileClient.default().sign
问题是:
登录后,所有AppSync查询/更改都不会出现任何问题但是
在任意时间(通常为5分钟)后或重新启动应用程序时
任何需要授权的AppSync查询/突变都会返回401(未授权)
这个问题一直持续到(我认为)下一次刷新access/id令牌(我们的配置为1.5小时),并且问题在(5分钟或重新启动)后再次出现。每当您收到401个未经授权的令牌时,您应该提示用户再次登录。如果这种情况非常频繁且出乎意料,则SDK中可能存在错误
请随意打开一个问题,以更好地帮助调试您的问题。每当收到401未经授权的问题时,您应该提示用户再次登录。如果这种情况非常频繁且出乎意料,则SDK中可能存在错误 请随意打开一个问题,以便更好地帮助调试您的问题