Заголовок HTTP-запроса Safari не отражает изменения перехватчика ax ios - PullRequest
0 голосов
/ 24 апреля 2020

В моем приложении Vue + Laravel SPA, когда я меняю Авторизацию заголовка запроса с "Basi c" на "Носитель", Chrome может отправлять http-запрос с заголовком "Носитель", но в Safari все еще использует «Basi c», хотя я изменил авторизацию в перехватчиках ax ios.

Почему они ведут себя по-разному? Как я могу это исправить? Любая помощь танков. * Подробности

.htaccess Основы c Настройки аутентификации. Всем запросам нужны учетные данные Basi c Auth, но Jwt.

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

Satisfy Any

AuthUserfile .htpasswd
AuthGroupfile /dev/null
AuthName "Enter your ID and PASSWORD"
AuthType Basic
require valid-user

SetEnvIf Authorization "(Bearer)" jwt_request
Order Deny,Allow
Deny from all
allow from env=jwt_request

<Files "service-worker.js">
   Require all granted
</Files>

ax ios настройки для jwt

axios.interceptors.request.use(config => {
  config.headers['X-Requested-With'] = 'XMLHttpRequest'
  const token = store.getters['auth/token']
  if (token) {
    config.headers['Authorization'] = 'Bearer ' + token
  }
  return config
}

, когда я выполняю console.log (config), он показывает " Bearer + JWTtoken ", но когда я проверяю сетевую консоль Safari, она использует" Basi c "и завершается с ошибкой jwt 401 с сообщением" токен не предоставлен ".

Safari (13.1)

...