Проблема с отправкой базовой аутентификации. на страницу JSF добавлен заголовок для вызовов JS REST - PullRequest
0 голосов
/ 20 июня 2019

Я добавляю вызов JS REST (упоминание CKEditor) на старую страницу JSF (MyFaces 2.2), но не могу найти способ получения данных авторизации.

Любой ajax-запрос, запускаемый компонентом JSF, включает заголовок авторизации, но мой XMLHttpRequest не включает этот заголовок.

Я попытался отладить код jsf, но кажется, что этот заголовок обрабатывается на более высоком уровне.

Установка xhr.withCredentials в значение true также не поможет.

/ часть конфигурации для упомянутого плагина, содержащего функцию канала, вызывающую REST /

  feed: function( options, callback ) {
    var xhr = new XMLHttpRequest();

    xhr.withCredentials = true;

    xhr.onreadystatechange = function() {
      if ( xhr.readyState == 4 ) {
        if ( xhr.status == 200 ) {
          callback( JSON.parse( this.responseText ) );
        } else {
          callback( [] );
        }
      }
    }

    xhr.open( 'GET', '/rest/mentions/' + encodeURIComponent( options.query ) );
    xhr.send();
  }

Таким образом, в результате заголовок авторизации не включен.

Имя пользователя и пароль были предоставлены при открытии страницы, все остальные вызовы ajax включаются автоматически, но не в XMLHttpRequest. Учетные данные не хранятся ни в одном скрытом входе на странице, в файле cookie или localStorage / sessionStorage.

Есть ли способ добавить их или почему они не добавлены?

...