У меня есть веб-api .net Core 2, который обслуживает vue.js, который будет обслуживаться из поддомена.

В настоящее время у меня есть клиентский сайт vue.js, принимающий файлы cookie аутентификации из веб-API ASP.Net Core Identity. Я только что перенес клиентское приложение из основного приложения .net, чтобы оно обслуживалось из экземпляра узла.

Локально я отлаживаю, и оба работают на локальном хосте с разными портами.

Мне интересно, возможно ли, чтобы идентификатор ядра .net доставлял cookie аутентификации на сайт vue.js, указав идентификаторы доменов / хостов, которые должны обслуживаться.

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

0
billy jean 19 Сен 2018 в 17:33

2 ответа

Лучший ответ

Настройте свой http-клиент vue на использование учетных данных. Например, для axios вы переопределите значение по умолчанию withCredentials:

axios.defaults.withCredentials = true;
1
Splinter 1 Окт 2018 в 11:00

Я решил, добавив withCredentials: true на моем экземпляре axios

const service = axios.create({
  baseURL: process.env.VUE_APP_BASE_API_URL,
  timeout: 60000,
  withCredentials: true, <=========== ADDING
})

И http: // localhost: 8080 на источник, указанный ниже.

services.AddCors(options =>
{
    options.AddPolicy("CorsPolicy", builder =>
    {
        builder.WithOrigins("http://localhost:8080") <=========== ADDING
            .AllowAnyMethod().AllowAnyHeader().AllowCredentials();
    });
});
0
Abdulsamet İLERİ 12 Май 2020 в 23:50