У меня возникла проблема с передачей некоторых данных из одной базы данных PostgreSQL в службу.
Способ установки выглядит следующим образом:
Service1 отправляет запрос GraphQL Service2 с запросом данных. Service2 хранит эти данные в базе данных PostgreSQL, из которой получает информацию.
Данные моделируются как сущность с помощью декораторов из TypeORM и GraphQL. Точное поле, с которым у меня возникла проблема, таково:
@Column({
nullable: true,
type: 'timestamp'
})
@Field(() => GraphQLISODateTime, {nullable: true})
executed_on: Date
Когда данные поступают из БД в service2, они существуют, все поля есть, и поле даты существует со своими значениями.
Поле при извлечении из БД:
"executed_on": "2019-10-27T23:00:00.000Z"
Поле при извлечении из Службы 1:
"executed_on": null
Когда оно отправляется на службу1, я могу console.logданные и я вижу поля там. Я предполагаю, что поскольку GraphQL отправляет данные в формате JSON, поле даты становится строкой. Теперь, когда эти данные передаются из service1 в другое место, все значения поля executed_on
становятся нулевыми. Я не знаю, по какой причине это происходит. Может ли быть так, что, поскольку сейчас это строка, она не анализируется в поле Дата?
Обходной путь, который я нашел, состоял в том, чтобы циклически проходить через каждый объект в массиве и просто создавать новый объект Date из текущего строкового значения, но я не хочу этого делать, потому что этот процесс происходит в другом сервисе. также, когда я получаю данные из внешнего REST API, так что это будет плохой дизайн, я думаю? Я довольно новичок в этом.
Любая помощь будет оценена.