ASP.Net Core 2身份验证将cookie写入本地主机不同的端口



我有一个 .net Core 2 Web api,它为 vue 提供服务.js它将从一个子域提供服务。

我目前有 vue.js 客户端站点接受来自 ASP.Net Core Identity Web API 的身份验证 cookie。我刚刚将客户端应用程序从 .net 核心应用程序中迁移出来,以便从节点实例提供它。

我正在本地调试,两者都在具有不同端口的本地主机上运行。

我想知道是否有可能让 .net 核心身份通过指定身份应服务的域/主机向 vue.js 站点提供身份验证 cookie。

最终,客户端和服务器应用将来自同一域但不同的子域。

将 vue http 客户端设置为使用凭据。例如,对于 axios,您将覆盖默认值"withCredentials":

axios.defaults.withCredentials = true;

我通过添加 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();
});
});

相关内容

  • 没有找到相关文章

最新更新