sharepoint - 在 SharePoint 2013 Webpart 中使用 Signalr

标签 sharepoint signalr sharepoint-2013 owin

我们需要为 SharePoint 2013 构建一个使用 Signalr 的 Web 部件。我知道使用应用程序部分很容易做到这一点,但就我而言,我需要在网络部分中使用它。我没有找到任何关于那个的文章

为此,我按照 ASP.NET 上 Signalr 的设置步骤将其添加到 SharePoint 项目中,如下所示:

  1. 将所需的脚本(Signalr.js 和 JQuery.js)添加到 Layout 文件夹

  2. 将对这些文件的引用添加到我的 Web 部件中,例如

`

 <script src="/_layouts/15/Scripts/jquery-1.6.4.min.js" ></script>
 <script src="/_layouts/15/Scripts/jquery.signalR-2.1.2.min.js"></script>
 <script src="/signalr/hubs"></script>

`

  1. 定义 Hub 类包含一个测试方法
  2. 如下添加启动类

`

[assembly: OwinStartup(typeof(Notifications.Code.OWINStartup))]

namespace Notifications.Code
{

    public class OWINStartup
    {
        public void Configuration(IAppBuilder app)
        {
            app.MapSignalR();
        }
    }
}

`

我的问题在最后一点,Owin 没有启动,这使得集线器代理文件“/Signalr/hubs”文件找不到

有什么帮助吗?

最佳答案

最后我找到了解决方案 here :

OWIN在程序集Microsoft.Owin.Host.SystemWeb中使用名为OwinHttpHandler的HttpHandler来启动。这在我的 SharePoint 服务器上不起作用,因为 IIS machine.config 不包含此处理程序,因此我将其添加到我的网站 web.config 中,如下所示

<add name="Owin" verb="*" path="/signalr" type="Microsoft.Owin.Host.SystemWeb.OwinHttpHandler, Microsoft.Owin.Host.SystemWeb, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

注意:不要忘记根据服务器上的版本更改程序集版本

您可以阅读使 Signalr 在 SharePoint web 部件上工作的完整步骤 here

关于sharepoint - 在 SharePoint 2013 Webpart 中使用 Signalr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26362049/

相关文章:

javascript - 来自 $rootscope 的 Angularjs 服务调用导致无休止的迭代循环

jquery - 在我无法控制的任何 AJAX 调用之后使用 JQuery 修改 DOM

c# - 哪种访问共享点的方法更好?

signalr - 保护 SignalR 调用

sharepoint - 适用于 SharePoint 2013 本地、Power BI 和自定义 Web 应用程序的 ADFS 单点登录?

javascript - 如何更改按钮的大小并为其添加背景颜色?

jquery - 使用 JQuery 通过 sharepoint Web 服务删除文档

c# - 使用 SignalR hub 向特定连接的用户广播消息

c# - 使用带有 MVC4 的高级集线器 api 的 SignalR 错误 - "/echo/negotiate 404 Not Found Error"

sharepoint-2013 - 尝试读取导航属性的值时发现具有非空值的“PrimitiveValue”节点;