#json #api #parsing #graphql #hasura
Вопрос:
Я пытаюсь отправить данные JSON для запроса graph ql ДАННЫЕ JSON:
{
"dataIds": ["1224rr67-4b3e-473c-80a7-dccc480fb6c0", "28avxrb8-5ff6-45ef-b51b-d4f654321bf8"]
}
Запрос ГРАФА QL:
query GetDataByIds($dataIds: [uuid!]) {
view_data(where: {data_id: {_in: $dataIds}}) {
data_id
created_on
updated_on
}
}
Я сталкиваюсь с проблемой, что, как вы видите выше JSON, массив имеет тип [String]
(строковый массив), но когда я вызываю Graph QL, он выдает мне эту ошибку:
{
"path": "$",
"error": "The variable type for the expected variable dataIds was not supported.",
"code": "bad-request"
}
Это означает , что [String]
это не анализируется [uuid]
, что, как я предполагаю, эквивалентно.
Есть ли какой-либо способ, которым я могу преобразовать [String]
в [uuid]
запрос ql в графике (я не могу изменить столбец базы данных, который имеет тип uuid
)
У кого есть решение, пожалуйста, поделитесь
Комментарии:
1. Мы используем много таких запросов и не видим с ними никаких проблем. Хотя мы используем hasura 1.3: используете ли вы hasura 2.x ?
Ответ №1:
Откуда взялись эти удостоверения личности? Вы можете проверить здесь, что эти идентификаторы не являются действительными uuidv4.
Поэтому я думаю, что Hasura преобразует тип в String
и не использует тип uuid
.
Комментарии:
1. В случае неверно отформатированных идентификаторов uuid hasura 1.3 возвращает: «недопустимый синтаксис ввода для типа uuid: «привет»» (я передал
["hello"]
ввод)