未找到信号器集线器 (403)

2024-04-02

是的,所以我看到了很多与此相关的问题,但建议的修复方案都对我不起作用。

我有一个在 Visual Studio 2012/IIS Express 中运行的 MVC4 项目,使用 SignalR 向用户提供一些反馈。当我运行该项目时,我在 Chrome 中收到 403 错误,如下所示:

Failed to load resource: the server responded with a status of 403 (Forbidden) http://{website}/Hubs/


Uncaught Error: SignalR: Error loading hubs. Ensure your hubs reference is correct, e.g. <script src='/signalr/hubs'></script>.

显然我已经将我机器上的实际域更改为 {website}

现在,最初我将它放在 Web 项目根目录中名为 signalr 的文件夹中,其中包含 hubs 子文件夹,但后来我在 SignalR GitHub 上读到,你不应该这样做,所以我将其更改为“Hubs”。还是没修好。

我还看到了有关放置 RouteTable.Routes.MapHubs(); 的修复以正确的顺序。我的看起来像这样:

    protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();

        RouteTable.Routes.MapHubs();

        WebApiConfig.Register(GlobalConfiguration.Configuration);
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
    }

我还看到一些人建议将路线作为参数传递到 MapHubs() 方法中,但这需要一个字符串和一个 HubConfiguration 对象作为参数,因此这也不起作用。

我的视图代码如下所示:

@using(Html.BeginForm("Report", "Home", FormMethod.Post, new { enctype="multipart/form-data" }))
{
    @Html.ValidationSummary(true);
    <div>
        @(InputExtensions.Hidden(Html, "submittingUserId", ViewBag.CurrentUser))
        @(InputExtensions.Hidden(Html, "signalConnectionId"))
        <br />
        @Html.EditorFor(model => model.UploadedFile)
        @Html.ValidationMessageFor(model => model.UploadedFile)
    </div>
    <div>
        <input id="subButton" type="submit" value="UploadFile" title="Upload File" />
    </div>
}

@section Scripts {
    @Scripts.Render("~/Scripts/jquery.signalR-1.1.1.min.js")
    @Scripts.Render("~/Hubs")

    <script type="text/javascript">
        $(document).ready(function () {
            var accountMovementMoveHub = $.connection.accountMovementHub;
            $("#signalConnectionId").val($.connection.connectionId);

            $.connection.hub.updateProgress = function (message) {
                $("#progress-list").append('<li>' + message + '</li>');

            };

            $.connection.hub.start();
        });
    </script>

}

我还将这些元素添加到 web.config 中:

<system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true">
    </modules>
</system.webServer>  

这让我简直要疯了,我已经尝试了在这里、github 和其他任何地方能找到的所有建议:(

任何帮助将不胜感激!

Thanks

ANSWER

事实证明,我假设对 /signalr/hubs 的脚本引用是包含集线器的 PHYSICAL 文件夹。但事实并非如此;它是对虚拟目录的引用,这就是为什么如果您还有一个名为 SignalR 的物理文件夹,它会感到困惑。我将 hubs 文件夹移至我的业务项目,并将脚本引用设置回“/signalr/hubs”,然后一切就开始工作了。

很抱歉这个愚蠢的问题并感谢您的回答。


RouteTable.Routes.MapHubs();将您的集线器映射到 http://{website}/signalr/hubs

您为什么尝试从 http://{website}/Hubs 获取集线器? 只需从浏览器访问这两个路径,您就需要获得包含大量 JavaScript 代码的 http 响应。如果这不起作用,则意味着您的应用程序配置不正确。

按照这个tutorial http://www.asp.net/signalr/overview/getting-started/tutorial-getting-started-with-signalr-and-mvc-4,您可以看到 RouteTable.Routes.MapHubs() 的顺序与您的顺序不同

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

未找到信号器集线器 (403) 的相关文章

  • 将视频上传/保存到数据库或文件系统

    我以前从未尝试过保存视频 所以我对此了解不多 我知道如果视频很小 我可以转换为字节数组并保存到数据库 但是为了提高效率 我想了解如何将任何上传的视频保存到我的服务器文件中 然后只保存该文件的文件路径我的数据库表中的视频 我完全不知道如何开始
  • MVC4 - ContextDependentView - 是什么意思?

    我刚刚开始使用 MVC4 我看到的第一个操作方法有一些新内容 我查了一下互联网 找不到任何关于此的信息 public ActionResult LogOn return ContextDependentView 有谁知道 ContextDe
  • MVC4 输入字段占位符

    Does MVC4默认支持placeholders对于生成的输入字段 我没有找到任何东西 所以我正在尝试实现我自己的 但不幸的是Prompt E Mail 没有传递到ViewData ModelMetadata Watermark同时产生控
  • Signalr 在生产服务器中总是陷入长轮询

    当我在服务器中托管应用程序时 它会检查服务器端事件并始终回退到长轮询 服务器托管环境为Windows Server 2012 R1和IIS 7 5 无论如何 我们是否可以解决这个问题 https cloud githubuserconten
  • 将 javascript 变量作为参数传递给 @url.Action()

    是否可以将javascript变量作为参数传递给 url Action 因为据我所知可能存在服务器和客户端问题 我的要求是我必须根据过滤器下载文件 并进行ajax调用不适用于下载文件 所以我对 url Action 进行了编码 但无法实现这
  • 将 viewbag 从操作控制器传递到部分视图

    我有一个带有部分视图的 mvc 视图 控制器中有一个 ActionResult 方法 它将返回 PartialView 因此 我需要将 ViewBag 数据从 ActionResult 方法传递到 Partial View 这是我的控制器
  • 无法将 NULL 值插入列“RoleId”(mvc4 简单成员身份)

    我注意到其他人也遇到了同样的问题 例如无法将 NULL 值插入列 UserId https stackoverflow com questions 15346608 cannot insert the value null into col
  • 你调用的对象是空的。 IE问题

    我在 ASP Net 中开发了一个网站 它在除 IE 之外的所有浏览器中都能正常工作 在 IE 中我收到错误 对象引用未设置为对象的实例 在我的本地计算机中一切正常 发布到服务器后出现错误 有什么想法如何解决这个问题吗 这是我得到的堆栈跟踪
  • 使用 Web 部署在 IIS Express 上发布 WCF 服务应用程序

    我想在 IIS Express 上发布在 Visual Studio 2010 中创建的 WCF 服务应用程序 所以我使用项目 gt 发布 gt Web 部署 Service URL http localhost Site applicat
  • 外部组件中的控制器上的 404

    我在解决 Asp Net MVC 4 项目中的 404 响应时遇到问题 它是在 VS2012 中构建的 目标版本为 4 5 我已将预编译的视图和控制器内置到独立的 DLL 中 我能够动态加载 DLL 并从我的核心项目中检查它们 甚至调用它们
  • SignalR - 手动设置 ClientID

    我希望能够让各个用户使用 SignalR 相互发送消息 因此我需要发送到特定的客户端 ID 如何在会话开始时为特定用户定义客户端 ID 例如用户的 GUID 主键 将 IConnectionIdFactory 替换为您自己的https gi
  • Microsoft.Owin 类型(例如 OwinMiddleware 和 IOwinContext)与其他 Owin 服务器不兼容吗?

    如果我使用 OwinMiddleware 和 IOwinContext 等 Microsoft Owin 类型构建 OWIN 中间件 我的中间件是否可以与非 Microsoft Owin 主机 服务器一起使用 我正在查看中间件类Nancy
  • 使用 CSS 和 JQuery 创建组织结构图结构

    I was checking on stack forum Trees in Twitter Bootstrap https stackoverflow com questions 11167628 trees in twitter boo
  • MVC 4 IntelliSense 无法在 Visual Studio 2010 的 Razor 中工作

    我将 Visual Studio 2010 与 ASP NET MVC4 一起使用 并且 IntelliSense for Razor 语法在应用程序的视图中对我不起作用 我能做些什么 还引用自 http sebnilsson com 10
  • 连接尝试失败,因为连接方未正确响应

    我在 1and1 上有一个共享服务器 在我的 MVC 站点中 当我尝试连接到外部的另一台服务器时 出现以下错误 发送请求时发生错误 无法连接到 远程服务器连接尝试失败 因为连接方 一段时间后没有正确回应 或建立 连接失败 因为连接的主机未能
  • 使用 HTML5 启用后置摄像头

    我正在开发一个使用 MVC ASP Net 4 HTML5 的项目 默认浏览器是 google chrome v29 0 1547 57 我可以与这些工具交互并拍照 但只能使用前置摄像头 如何启用后置摄像头 平板电脑的特点 三星 Galax
  • MVC 4 授权属性无法识别 ASP.Net 3.5 中的表单身份验证

    我正在为之前创建过 ASP Net 3 5 VS 2008 应用程序的客户端创建一个新的 MVC 4 应用程序 我创建了一个网关应用程序来启动其他几个 ASP Net 3 5 Web 应用程序 网关应用程序处理登录和表单身份验证票证 只要所
  • 有没有更好的方法使用 MVC 4 和 Entity Framework 5 添加子记录?

    我正在学习 MVC 并结合实体框架处理其无状态性质 我的问题是 有没有更优雅的方式来处理下面的场景 我有两个 POCO 实体 public class Contest public long ID get set public IColle
  • Visual Studio 智能感知搞砸了

    所以我是 MVC4 和 C 的新手 我已经设计这个网站大约两周了 智能感知没有任何问题 两天来 Visual studio 告诉我 Viewbag 和其他 命令不是我的项目的一部分 我可能错过了一些东西 或者它告诉我 Viewbag 在当前
  • IsReusable 属性中的上下文切换

    是否可重用属性 下面是我的理解IsReusable财产 如果处理程序返回静态内容 将值设置为 true 是安全的 但如果线程返回动态内容 为了使其线程安全 IsReusable应设置为 false 在这种情况下 可能会发生上下文切换 这可能

随机推荐

  • 如何在 Windows 中使用批处理脚本创建符号链接?

    我当前正在使用以下脚本将具有特定前缀的所有文件复制到目标目录 for f delims k in dir d Search Path File Prefix s b do copy k d Target Directory 这工作正常 但我
  • Rails 文件下载和查看更新 - Howto?

    这看起来应该是直截了当的 但我很难过 我有一个视图控制器的链接 最终使用 send data 将文件下载到用户的硬盘驱动器 这非常有效 并且它使当前视图显然没有受到影响 但现在我希望页面在下载完成后提供一些反馈 在调用 send data
  • 用户、组和角色的多对多声明式 SQLAlchemy 定义

    我是 SQLAlchemy 的新手 想知道定义此类表和关系的最佳方法是什么 我希望能够通过以下方式访问用户组user groups 分组中的用户group users 并找出用户在组中的角色 我假设将在关联模型中定义逻辑 我还想按组选择所有
  • 如何将perl6文件编译为exe

    我正在使用基于 Windows 上 MoarVM 构建的 perl6 版本 我创建了一些 perl6 文件并想将其编译为 exe 我尝试了以下方法 perl6 target MAST r pl gt r 现在我想将 r 编译为可执行文件 我
  • ListView 带有 longClick 用于显示和隐藏复选框?

    我沿着代码在这里 网络链接 http windrealm org tutorials android listview with checkboxes without listactivity php并且代码稍微修改了一下 变成了这样 文件
  • 销毁对象放置新后未调用析构函数

    我不知道为什么这不起作用 下列Function是通过放置 new 创建的 提供了一个函数来检查它是否应该被破坏 如果是 则手动调用其析构函数 这是测试用例 似乎从未调用析构函数 Represents a function at runtim
  • Mac OS 中的 COM 相当于什么?

    我是 Mac 编程领域的新手 有人可以告诉我 Mac 中可重用 COM 组件的等效项是什么 以及一些入门资源的链接 创建可重用的类似 COM 的组件并从调用应用程序引用这些组件 吗 谢谢 澄清 我想知道是否存在类似的技术 在操作系统级别受支
  • 将旧版本的代码添加到 git repo

    我的项目有一个 git 存储库 我的第一次提交是 v1 2 在使用 git 之前 我使用代码的每日快照来保证其安全 我现在想将所有快照添加到存储库中 并从 v0 3 开始 但我已经在 1 2 之上进行了相当多的提交 那么最好的方法是什么 我
  • 在 Pandas 数据框中查找唯一值,无论行或列位置如何

    我有一个 Pandas 数据框 我想找到该数据框中的所有唯一值 无论行 列如何 如果我有一个 10 x 10 数据框 并假设它们有 84 个唯一值 我需要找到它们 而不是计数 我可以创建一个集合并通过迭代数据帧的行来添加每行的值 但是 我觉
  • 如何检查通过联系表 7 提交的电子邮件是否存在于我的数据库中?

    当客户通过联系表 7 提交电子邮件时 如何检查电子邮件是否已存在于我的数据库中并将通知消息更改为 您的电子邮件已存在于我们的数据库中 到目前为止 我已经尝试使用 before send 挂钩 但是当我单击提交时 页面只是挂起并且没有确认消息
  • 如何告诉捆绑程序忽略不存在的宝石?

    我的组织有许多用于自动化测试的内部 gem 但生产部署不需要它们 我正在尝试使用 Bundler 因此在我的 Gemfile 中我将这些 gem 包装在 group test development do gem dashboard sum
  • 对于临时/循环存储来说,最好/最快的 MySQL 表架构是什么?用于会话管理?

    当为非常动态的网站编写自定义 MySQL 数据库驱动的 PHP 会话管理时 会话表的最佳 最快读 写访问 结构是什么 错误示例 未优化 CREATE TABLE session session id VARCHAR 32 NOT NULL
  • 如何忽略 git 存储库根目录中的目录,但将其进一步包含在树中?

    我需要使用 gitignore排除我的存储库根目录中的目录 但是 其他同名目录存在于目录树的更深处 我需要将它们包括在内 看来当我将目录名称放入 gitignore 它捕获所有这些目录 而不仅仅是我需要忽略的目录 我明白那个 gitigno
  • Visual Studio 2015 中未生成 pdb 文件

    我正在开发一个应用程序 使用C MVC 与实体框架 数据库优先 VS 2015 我创建了一个单独的项目数据层访问 当我在调试或发布模式下构建此项目时 不会生成调试文件 即 pdb file 请告诉我 我怎样才能生成这个 pdb我的项目的文件
  • 更新到 v4.8.0 后 phpMyAdmin 出现错误:$cfg['TempDir'] (./tmp/) 无法访问

    phpMyAdmin在 v4 7 9 上运行良好 今天更新到 v4 8 0 后 替换旧的phpmyadmin文件夹与新文件夹 我在 phpMyAdmin 中收到此消息 cfg TempDir tmp 不可访问 phpMyAdmin 无法 缓
  • ansible if else 构造

    这是我的 if else Ansible 逻辑 name Check certs exist stat path etc letsencrypt live rootDomain fullchain pem register st inclu
  • 带有 Google 卫星图层的 Leaflet Map API [重复]

    这个问题在这里已经有答案了 我对此非常感兴趣传单地图API http leaflet cloudmade com 但是 我需要能够使用 Google 卫星层 我无法找到有关如何将 Google 卫星图层添加到 Leaflet 的示例 我知道
  • Java 中的范围滑块

    大家好 我想知道是否有人听说过提供范围滑块的 Java 组件 滑块 即带有两个旋钮 用于定义最小最大值的范围 而不仅仅是一个 我在网上找到了 perfuse 库中的 JRangeSlider 但我有两个问题 首先 但不是那么重要 是它有自己
  • PHP cURL:如何将正文设置为二进制数据?

    我正在使用一个 API 它希望我发送一个 POST 其中包含文件中的二进制数据作为请求的正文 如何使用 PHP cURL 完成此任务 与我想要实现的目标等效的命令行是 curl request POST data binary myimag
  • 未找到信号器集线器 (403)

    是的 所以我看到了很多与此相关的问题 但建议的修复方案都对我不起作用 我有一个在 Visual Studio 2012 IIS Express 中运行的 MVC4 项目 使用 SignalR 向用户提供一些反馈 当我运行该项目时 我在 Ch