首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SignalR拒绝连接到[url],因为它违反了以下内容安全策略指令

SignalR拒绝连接到[url],因为它违反了以下内容安全策略指令
EN

Stack Overflow用户
提问于 2020-05-11 13:29:53
回答 1查看 1.5K关注 0票数 5

我在SignalR 4.8中创建了一个.NET项目。

正如文档中描述的那样,我正确地使用了signalR。我的两个脚本标签:

代码语言:javascript
复制
<script src="~/Scripts/jquery.signalR-2.4.1.js"></script>
<script src="https://mySignalRServer/signalr/hubs"></script>

我正在以以下方式初始化连接:

代码语言:javascript
复制
$.connection.hub.url = "https://mySignalRServer/signalr";
let screencasting = $.connection.screencastingHub;

$.connection.hub.qs = 'uuid=' + masterGuid + '&master=true';
$.connection.hub.logging = true;
screencasting.client.changeTransport = changeTransport;

$.connection.hub.start({ transport: 'webSockets' }).done(function () {
    console.log('---Connected to signalR server via WebSockets');
});

当代码到达下面的$.connection.hub.start()行时,会发生以下错误:

jquery.signalR-2.4.1.js:1871拒绝连接到'wss://mySignalRServer/signalr/connect?transport=webSockets&clientProtocol=2.1&uuid=56b12321-1091-48aa-b52f-dc1407b3804a&master=true&connectionToken=WOP95HhCwdN7ogruYHpfrrsZofenOqo5kRDVLJh6S6zUH0AN74cUTEL44qORGBCRMWiGH5ei12826qLB%2BMHFa7YqaN1KeIYmG7dUaE%2B6DiF2CIwaNTl4dwbwR6t3Cxgx&connectionData=%5B%7B%22name%22%3A%22screencastinghub%22%7D%5D&tid=8‘,因为它违反了以下内容安全策略指令:“connect:”。

有趣的是,这段代码运行良好。这会不会是一个服务器式的错误?如何添加这个Content Security Policy (CSP)。(在这里输入链接描述)

它是否作为标题添加到某个地方?在html的头上?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-12 15:53:29

经过大量的测试,这是为我找到的解决方案:

Web.config文件中,我添加了以下一行:

代码语言:javascript
复制
<httpProtocol>
      <customHeaders>
        <add name="Content-Security-Policy" value="default-src https:; connect-src https: wss:" />
      </customHeaders>
</<httpProtocol>

有关更多信息,请查看

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61730903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档