Неверный домен файлов cookie токена CSRF Laravel Sanctum с настройкой многопользовательского SPAPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Неверный домен файлов cookie токена CSRF Laravel Sanctum с настройкой многопользовательского SPA

Сообщение Anonymous »

Проблема
Я создаю SPA, которому необходимо пройти аутентификацию на бэкенде Laravel с помощью Sanctum. Я использую пакет stancl/tenancy для мультитенантности, где у каждого арендатора есть собственный поддомен. Однако при попытке получить файл cookie CSRF я получаю ошибки «Файл cookie отклонен из-за недействительного домена».
Настройка
  • SPA работает на localhost:5500
  • API Laravel с клиентом на foo.localhost:8000 (с использованием пакета stancl/tenancy)
  • Использование Laravel Святилище для аутентификация
Конфигурация среды

Код: Выделить всё

SESSION_DOMAIN=.localhost
SANCTUM_STATEFUL_DOMAINS=localhost:5500
Сообщения об ошибках
При вызове конечной точки /sanctum/csrf-cookie я получаю следующие ошибки в консоли браузера:

Код: Выделить всё

Cookie “XSRF-TOKEN” has been rejected for invalid domain.
Cookie “appName_session” has been rejected for invalid domain.
Cookie “iYsowm5ibM4hJnHPEkQ8byJiJqqjr1IvSpFsV8P7” has been rejected for invalid domain.
Код
Вот как я делаю запрос:

Код: Выделить всё

axios.defaults.withCredentials = true;
axios.defaults.withXSRFToken = true;

var baseUrl = 'http://foo.localhost:8000';

axios.get(`${baseUrl}/sanctum/csrf-cookie`, {
headers: {
'Accept': 'application/json'
}
})
.then((response) => {
console.log(response);
})
.catch(error => {
console.error('Failed to set CSRF cookie:', error);
});
Вопрос
Как правильно настроить файлы cookie Laravel Sanctum для работы со SPA на localhost:5500, когда API находится в субдомене клиента (foo .localhost:8000) с использованием пакета stancl/tenancy?
Дополнительная информация
  • Версия Laravel: 11.x
  • stancl/tenancy версия: 3.x
  • Все выполняется локально для разработки
Будем очень благодарны за любую помощь!
Что я пробовал
  • Настройка других Значения SESSION_DOMAIN
  • Настройка CORS в config/cors.php
  • Проверка включения учетных данных в запрос на выборку
но у меня все равно есть указанный выше браузер ошибки консоли

Подробнее здесь: https://stackoverflow.com/questions/793 ... -spa-setup
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»