Модификаторы поиска в AWS AppSync и GrahphQL - PullRequest
1 голос
/ 22 июня 2019

Я пытаюсь разработать GraphQL API с помощью AWS AppSync + Amplify.Моя модель выглядит так -

type AudioMetadata @model @searchable {
    id: ID!,
    title: String!,
    description: String!,
    category: [String]!,
    duration: Int!
}

Как вы можете сказать, это поддерживается DynamoDB и Amazon Elastic Search.Я хочу иметь Query, который принимает модификаторы поиска для поиска.Модификаторы поиска - это Slack-подобные модификаторы, которые принимают форму id:, intitle:, indescription:, duration_lt: и duration_gt:.

. При поиске я бы хотел выполнить поиск в ElasticSearch.

У меня вопрос: как мне написать Query, который обслуживает эти модификаторы поиска (возможно, использует модификатор поиска и строку поиска) и выполняет поиск по этому полю в Elastic Search.

1 Ответ

2 голосов
/ 25 июня 2019

Как отметил пользователь Yik San Chan в комментариях, отличный пример будет https://aws -amplify.github.io / docs / cli / graphql # add-a-custom-geolocation-search-resolver-that-targets-an -asticsearch-domain-создал-by-searchable

В вашем случае вам придется создавать в схеме дополнительные запросы graphql для обработки различных значений, по которым вы хотите искать (например, intitleи т.д.) и создайте преобразователи для каждого из этих запросов.Следуйте примерам по ссылке выше.

...