Алголия: Как использовать secured_api_key в клиенте? - PullRequest
0 голосов
/ 11 марта 2020

Я следую этим инструкциям:
https://www.algolia.com/doc/guides/security/api-keys/how-to/how-to-restrict-the-search-to-a-subset-of-records-belonging-to-a-specific-user/?language=ruby

о том, как создать secured_api_key:

secured_api_key = Algolia.generate_secured_api_key(
  'your_search_only_api_key_kept_private', # Make sure to use a search key
  { filters: 'viewable_by:' + current_user_id.to_s }
)

Где и как это сделать Я использую этот secured_api_key (сгенерированный в Ruby) в Javascript для предварительной фильтрации результатов? Я использую виджет автозаполнения React.

1 Ответ

0 голосов
/ 11 марта 2020

Вы должны предоставить защищенный ключ API своему клиенту. Вот две альтернативы:

  1. Предоставить маршрут, который возвращает ключ API. Клиентский вызов должен выполнить запрос XHR, чтобы иметь к нему доступ. Получив ключ, вы можете создать экземпляр клиента и приложения React.

  2. Вы можете встроить ключ API в HTML в объекте JavaScript. Этот шаблон обычно делается для приложения SSR React. После запуска приложения вы получаете «глобальное» значение. В документации вы можете найти руководство, описывающее этот шаблон.

...