Как использовать Negotiate или Kerberos аутентификацию с axios? - PullRequest
0 голосов
/ 12 декабря 2018

Используя Axios в своем клиентском веб-коде, могу ли я отправлять веб-запросы XHR с использованием аутентификации Kerberos или Negotiate?Я бы хотел, чтобы браузер предоставлял пользовательский токен SPNEGO так же, как обычный запрос через ссылку или адресную строку, через приглашение пользователя или единый вход для доверенных URI.

Все, что я вижу, является примером, подобным этому:

axios.get(url, {
  withCredentials: true,
  auth: {
    username: '...',
    password: '...'
  }
}

Но, похоже, он пытается использовать Basic auth.Я хотел бы сделать Kerberos без указания имени пользователя или пароля.Возможно ли это?

Или я об этом не так думаю?

1 Ответ

0 голосов
/ 19 декабря 2018

При любом запросе Axios - точнее, браузер - автоматически добавит токен SPNEGO Negotiate в заголовок «Авторизация», если для параметра withCredentials установлено значение true, как показано в примере.Параметр auth не требуется.

Если это часть запроса CORS с предварительной проверкой, браузер автоматически отправит запрос OPTIONS, если это необходимо, без заголовка авторизации.Аксиос ничего не делает (или должен делать), чтобы включить это поведение.

axios.get(url, { withCredentials: true })
...