Amplify.observe 不会根据对 DynamoDB 的更改进行更新

问题描述

我目前正在调用我的服务器以在数据存储区中进行更改并监听其他更改。尽管在后端正确更改了数据库,但我没有收到来自数据库的任何新更改。 我最近将 amplify 从 1.4.2 升级到 1.6.8,这时问题开始出现。

Amplify.DataStore.observe(Profile::class.java,{ observationCancelable ->
//ERROR
        },{ changedItem ->
            when (changedItem.item().state) {
//DO Business logic
            }
        },{ exception ->
            //ERROR
        },{
        }
        )

当我查询数据存储时,我得到与 DynamoDB 上的数据不同的过时结果。有什么办法可以弄清楚为什么本地数据存储没有被更新?会不会是服务器配置的问题?还是我遗漏了一些设置步骤?

编辑:在下面添加了一些额外的细节

所以我想添加更多细节,这些细节看起来更相关,以及基于我的研究的更新。我正在端点之间切换(开发到测试环境)。看起来开发环境与应用程序运行良好,正确使用数据存储并执行正确的 AppSync。但在新的测试环境中,当应用启动时,它会获取最新版本的数据存储,但尽管能够对后端进行更改,但它无法执行任何 AppSync。

这是我在应用程序尝试订阅后端的 Profile 对象时遇到的错误

amplify:aws-datastore: Unauthorized failure for ON_CREATE Profile
amplify:aws-datastore: Releasing latch due to an error: Subscription error for Profile: [GraphQLResponse.Error{message='Not Authorized to access onCreateProfile on type Subscription',locations='null',path='null',extensions='{errorType=Unauthorized}'}]

是否有一些配置文件我应该查看以进行比较以确保端点匹配或应用程序需要一些访问密钥?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)