Nuxt/Auth — как прописать кастомные заголовки для this.$auth.loginWith(‘laravelPassport’)?

Для прописывания кастомных заголовков при использовании метода loginWith в Nuxt.js с пакетом nuxt/auth и аутентификации через laravelPassport необходимо внести некоторые изменения в конфигурационный файл приложения.

Во-первых, убедитесь, что у вас установлен пакет @nuxtjs/auth-next и настроен согласно документации. Допустим, у вас уже есть файл auth.js в директории plugins, который создается по умолчанию при установке nuxt/auth. Откройте его и найдите блок, отвечающий за конфигурацию авторизации.

В конфигурации auth найдите опцию strategies, где определен объект laravelPassport. Этот объект содержит информацию о вашем API Laravel Passport. Здесь вы можете установить кастомные заголовки.

Пример конфигурации laravelPassport с кастомными заголовками может выглядеть следующим образом:

export default {
  strategies: {
    laravelPassport: {
      // ...

      enabled: true,
      endpoints: {
        login: {
          url: 'api/auth/login',
          method: 'post',
          propertyName: 'token'
        },
      },

      // Установите кастомные заголовки в объекте `headers`
      headers: {
        'X-Custom-Header': 'Custom Value',
        'Authorization': 'Bearer CustomTokenValue'
      }
    },
  },
}

В приведенном примере мы добавили два кастомных заголовка: X-Custom-Header и Authorization. Вы можете заменить их своими значениями.

После внесения изменений в конфигурацию laravelPassport сохраните файл auth.js и перезагрузите сервер разработки nuxt.js (если он был запущен). Теперь, при вызове this.$auth.loginWith('laravelPassport'), ваши кастомные заголовки будут автоматически добавлены к запросу.

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