gpt4 book ai didi

amazon-web-services - 无法在 AppSync 响应映射模板中从 RDS 序列化 AWSDate

转载 作者:行者123 更新时间:2023-12-04 01:01:56 25 4
gpt4 key购买 nike

我正在使用无服务器 Aurora 作为我的数据库构建 AppSync 项目,并偶然发现了这个奇怪的错误:

"Can't serialize value (/getUsers/created_at) : Unable to serialize `2019-09-28 07:36:13` as a valid DateTime Object."

当我得到一个如下所示的 User 对象时会发生这种情况:
type Users {
id: String!
name: String!
description: String
created_at: AWSDateTime
updated_at: AWSDateTime
logged_in: AWSDateTime
}

错误似乎正在发生,因为 $utils.rds.toJsonObject($ctx.result)[0][0]无法解析 AWSDateTime。这使得无法从数据库中提供任何带有日期的内容。

如果我只是选择没有日期的对象 ["SELECT id,name,description FROM Users WHERE id='$ctx.args.id'"]它工作正常。

那么在 AWS AppSync 和 Aurora 中应该如何处理日期呢?我一直无法在文档中找到处理日期的任何示例或引用。 :(

最佳答案

我偶然在与此问题相关的存储库中找到了答案 Use AppSync and Amazon RDS with serverless-graphql
事实证明,就像用户 dev1702发现,$utils.rds.toJsonObject($ctx.result)[0][0]无法将 RDS 时间戳解析为 GraphQl AWSDate 格式。
因此,只需从以下位置更改 graphql 模式类型:created_at: AWSDateTime到:created_at: String解决了这个问题。
备注:如果您在将方案列类型更改为 AWSDateTime 后遇到此错误,只需访问DynamoDB控制台并更新不是ISO 8601格式的记录.

关于amazon-web-services - 无法在 AppSync 响应映射模板中从 RDS 序列化 AWSDate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58144742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com