2017-01-20 18 views
0

Как и для this question. Но ОП заявил, что его проблема решена «сама по себе».Satellizer не отправляет заголовки аутентификации с некоторыми клиентами

Также похожие на this.

(я собираюсь копировать вставить некоторые части описания, так как это в значительной степени той же проблемой)

Я работаю над проектом с использованием angularjs/Laravel. Это проект на основе токенов, поэтому я использую спутник для обработки этого.

У одного из наших клиентов есть проблема неспособности входа в систему, он не только не работает в браузере ... он даже не работает, если он создает новую учетную запись пользователя на своем компьютере.

Проблема в том, что он не отправляет на сервер токен авторизации, действительный токен хранится в локальном сеансе, но он не отправляется в заголовках. Также я не могу настроить заголовки вручную.

При просмотре заголовков запросов на вкладке сети в инструментах dev я вижу, что запрос не содержит заголовок авторизации.

Я потерялся от того, что мне нужно, так как я чувствую, что пробовал все, что мог. Пробовал очищать кеш и удалять файлы cookie. Проверено, заблокированы ли файлы cookie (они не были). Проверено на наличие странных антивирусов, брандмауэров или странных программ (ничего). Я также попытался перезапустить систему и создать новую учетную запись для того же компьютера, ничего не получилось.

Это фактически работает на ПК любого другого клиента, за исключением того, что в прошлом году что-то подобное произошло с другим клиентом (тот же проект), и мы обвинили его в том, что его старая ОС не поддерживает что-то со спутника, но на этот раз это последний ген. Также он работал и переставал работать со своим компьютером внезапно. (возможно, после запуска ccleaner).

Мое подозрение в том, что на самом деле это не имеет никакого отношения к его компьютеру, но странная ошибка в спутниках, которая вызывает некоторые сложные ситуации.

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

Также я впервые задал вопрос здесь ... (чувствуя себя застенчивым), привет. (help)

ответ

0

Я до сих пор не знаю причины, почему это произошло для начала.

В конце концов я решил это, отредактировав часть исходного кода спутника.

if (_this.SatellizerShared.isAuthenticated() && _this.SatellizerConfig.httpInterceptor()) { 
        var tokenName = _this.SatellizerConfig.tokenPrefix ? 
         [_this.SatellizerConfig.tokenPrefix, _this.SatellizerConfig.tokenName].join('_') : _this.SatellizerConfig.tokenName; 
        var token = _this.SatellizerStorage.get(tokenName); 
        if (_this.SatellizerConfig.tokenHeader && _this.SatellizerConfig.tokenType) { 
         token = _this.SatellizerConfig.tokenType + ' ' + token; 
        } 
        config.headers[_this.SatellizerConfig.tokenHeader] = token; 
       } 

Satellizer не устанавливая заголовок, поэтому я добавил: config.headers[_this.SatellizerConfig.tokenHeader] = token; вне если и satellizer смог правильно установить заголовок.

После этого я отключил свои изменения, чтобы убедиться, что после установки заголовков правильно спутник будет работать так, как ожидалось, и он сработал, поэтому по какой-то причине он не смог распознать моего аутентифицированного пользователя и оставил заголовки в сборе. Но после того, как он заставил его добавлять заголовки, как только он работал нормально каждый раз после этого.

Надеюсь, это поможет кому-то, кто борется с подобной проблемой.

 Смежные вопросы

  • Нет связанных вопросов^_^