У меня есть таблица пользователей, которая состоит из электронной почты, телефона и т. Д., И я хотел бы запросить запись на основе ее адреса электронной почты или телефона (вместо #Id).Имея неадекватные знания, чтобы сделать это - я написал такую схему:
type Query {
...
getUser(id: ID!): User
getUserByEmail(input: GetUserByEmailInput!): User
...
}
input GetUserByEmailInput {
email: String!
}
В резольвере против getUserByEmail (..) я попытался поэкспериментировать, но пока ничего не получалось, поэтому он остается в состоянии по умолчанию:
Поэтому, когда я запускаю такой запрос в консоли запросов:
query GetUserByEmail {
getUserByEmail(input: {email: "email@email.com"}) {
id
name
email
image
}
}
это возвращает ошибку, подобную этой:
{
"data": {
"getUserByEmail": null
},
"errors": [
{
"path": [
"getUserByEmail"
],
"data": null,
"errorType": "DynamoDB:AmazonDynamoDBException",
"errorInfo": null,
"locations": [
{
"line": 41,
"column": 5,
"sourceName": null
}
],
"message": "The provided key element does not match the schema (Service: AmazonDynamoDBv2; Status Code: 400; Error Code: ValidationException; Request ID: xxx)"
}
]
}
Как запросить запись по значению поля без идентификатора?