无法从 Elasticsearch 序列化 AWSDate
Unable to serialise AWSDate from Elasticsearch
我正在使用 AWS elasticsearch 服务作为我的数据库构建 AppSync 项目,并在查询时遇到此错误:
"Can't serialize value (/getUsers/created_at) : Unable to serialize
2020-01-18T07:36:13
as a valid DateTime Object."
当我得到一个如下所示的用户对象时会发生这种情况:
type Users {
id: String!
name: String!
description: String
created_at: AWSDateTime
updated_at: AWSDateTime
logged_in: AWSDateTime
}
elasticsearch中存储的数据为字符串类型,格式为:2020-01-18T07:36:13。
我看到了类似的 post,但找不到任何解决方案。那么,有什么办法,我应该在我的响应映射模板中将它反序列化为 AWSDataTime,或者我应该以某种日期格式存储在 elasticsearch 中。
我从这个 post 得到的一个解决方案是将日期的类型设置为字符串。但是,AWSDateTime 到底有什么用呢。
查看 AWS AppSync 文档,似乎时区偏移量对于此标量(即 AWSDateTime)是强制性的。从您的示例来看,这似乎丢失了,因为秒字段后没有任何内容。您可以尝试自己附加时区偏移量,在这种情况下,它将正确序列化。
我正在使用 AWS elasticsearch 服务作为我的数据库构建 AppSync 项目,并在查询时遇到此错误:
"Can't serialize value (/getUsers/created_at) : Unable to serialize
2020-01-18T07:36:13
as a valid DateTime Object."
当我得到一个如下所示的用户对象时会发生这种情况:
type Users {
id: String!
name: String!
description: String
created_at: AWSDateTime
updated_at: AWSDateTime
logged_in: AWSDateTime
}
elasticsearch中存储的数据为字符串类型,格式为:2020-01-18T07:36:13。
我看到了类似的 post,但找不到任何解决方案。那么,有什么办法,我应该在我的响应映射模板中将它反序列化为 AWSDataTime,或者我应该以某种日期格式存储在 elasticsearch 中。
我从这个 post
查看 AWS AppSync 文档,似乎时区偏移量对于此标量(即 AWSDateTime)是强制性的。从您的示例来看,这似乎丢失了,因为秒字段后没有任何内容。您可以尝试自己附加时区偏移量,在这种情况下,它将正确序列化。