Реактивный поисковый прокси-сервер с аутентификацией cookie

У меня есть подпружиненный сервер, к которому я обращаюсь к своему поисковому кластеру Elastic через конечную точку типа прокси. Запрос должен быть авторизован с помощью cookie.

В настоящее время я использую searchkit с поддержкой аутентификации запросов через withCredentials флаг. Существует ли аналогичный вариант для реактивного поиска или есть другое решение для авторизации запроса с помощью файла cookie?

Я мог бы добавить: бэкэнд предоставляет клиент swagger, который работает в другом домене, чем мой клиент внешнего интерфейса. Этот клиент "владеет" cookie, и поэтому я не могу прочитать cookie из моего клиентского интерфейса

2 ответа

Решение

Окей, так получается, Reactivesearch использует fetch и хочет получать credentials: 'include' для проверки подлинности cookie. Это не может быть помещено в заголовки, которые предоставляет Reactivesearch, и должно быть помещено в корневой объект для запроса.

Это можно сделать, внедрив beforeSend на ReactiveBase.

const Base = ({ children }) => {
  const onBeforeSend = props => {
    return {
      ...props,
      credentials: 'include',
    }
  }

  return (
    <ReactiveBase
      app="app-name"
      url="url"
      beforeSend={onBeforeSend}
    >
      {children}
    </ReactiveBase>
  )
}

Вы можете использовать headers поддержать в ReactiveBase передавать пользовательские заголовки вместе с запросами. Ссылка на документы. Так как нет withCredentials Вы можете прочитать куки и установить пользовательские заголовки для проверки запросов на промежуточном программном обеспечении прокси.

<ReactiveBase
  ...
  headers={{
      customheader: 'abcxyz'
  }}
>
    <Component1 .. />
    <Component2 .. />
</ReactiveBase>

Вот пример прокси-сервера, но его в NodeJS

Другие вопросы по тегам