【问题标题】:.net core 5 signalr cors blocked with wildcard [duplicate].net core 5 signalr cors被通配符阻止[重复]
【发布时间】:2021-04-27 10:11:43
【问题描述】:

为什么不允许 all cors 工作?

.net core 5 web api:

   services.AddCors();
   services.AddSignalR();


   app.UseCors(c => c.AllowAnyOrigin().AllowAnyHeader().AllowAnyMethod());

js文件:

import * as signalR from '@microsoft/signalr'

let connection = new signalR.HubConnectionBuilder()
    .withUrl("https://localhost:5001/ws/candlehub")
    .build();

connection.start()
    .then(() => connection.invoke("ConnectToCandle", "x"));

错误:

【问题讨论】:

    标签: asp.net-core .net-core cors signalr


    【解决方案1】:

    https://docs.microsoft.com/aspnet/core/signalr/security?view=aspnetcore-5.0#cross-origin-resource-sharing

    默认情况下,javascript 客户端使用 withCredentials = true,根据 CORS 规范,它不适用于 * 来源。您应该指定要允许的显式来源并在 CORS 配置中包含 AllowCredentials(),或者在 HubConnectionBuilder 选项中设置 withCredentials = false

    【讨论】:

      猜你喜欢
      • 2021-08-26
      • 2019-07-01
      • 2021-04-18
      • 2021-09-29
      • 2020-01-04
      • 2018-12-23
      • 2019-08-11
      • 2017-05-31
      • 2020-06-14
      相关资源
      最近更新 更多