Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
信号机owin启动不';不要被击中。获得;对象没有';t支持属性或方法“;javascript错误_Javascript_Jquery_Signalr_Signalr Hub_Owin - Fatal编程技术网

信号机owin启动不';不要被击中。获得;对象没有';t支持属性或方法“;javascript错误

信号机owin启动不';不要被击中。获得;对象没有';t支持属性或方法“;javascript错误,javascript,jquery,signalr,signalr-hub,owin,Javascript,Jquery,Signalr,Signalr Hub,Owin,在过去的几个小时里,我一直在拼命工作。我有一个使用signar的聊天应用程序,但在运行它时遇到javascript错误“Object不支持属性或方法”。我正在使用IIS托管该站点。 我猜javascript错误是因为启动没有被解雇 请帮忙 过了一段时间,我发现owin启动并没有受到影响 [assembly: OwinStartup( typeof( SignalrSimpleChat.Startup ) )] namespace SignalrSimpleChat {

在过去的几个小时里,我一直在拼命工作。我有一个使用signar的聊天应用程序,但在运行它时遇到javascript错误“Object不支持属性或方法”。我正在使用IIS托管该站点。 我猜javascript错误是因为启动没有被解雇

请帮忙

过了一段时间,我发现owin启动并没有受到影响

    [assembly: OwinStartup( typeof( SignalrSimpleChat.Startup ) )]
    namespace SignalrSimpleChat

{
    public class Startup
    {
        public void Configuration( IAppBuilder app )
        {
            app.MapSignalR( ); // not getting hit!!!!
        }

    }
}
我的金块安装是

  <?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="jQuery" version="2.0.3" targetFramework="net45" />
  <package id="json2" version="1.0.2" targetFramework="net45" />
  <package id="Microsoft.AspNet.SignalR" version="2.0.1" targetFramework="net45" />
  <package id="Microsoft.AspNet.SignalR.Core" version="2.0.1" targetFramework="net45" />
  <package id="Microsoft.AspNet.SignalR.JS" version="2.0.1" targetFramework="net40" />
  <package id="Microsoft.AspNet.SignalR.Owin" version="1.2.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.SignalR.SystemWeb" version="2.0.1" targetFramework="net45" />
  <package id="Microsoft.Owin" version="2.1.0-rc1" targetFramework="net45" />
  <package id="Microsoft.Owin.Host.SystemWeb" version="2.1.0-rc1" targetFramework="net45" />
  <package id="Microsoft.Owin.Security" version="2.1.0-rc1" targetFramework="net45" />
  <package id="Newtonsoft.Json" version="5.0.8" targetFramework="net45" />
  <package id="Owin" version="1.0" targetFramework="net45" />
</packages>
试用

$.connection.hub.start().done(function () {
    chat.server.join('test');
});
如果不起作用,请尝试不使用局部变量:

$.connection.hub.start().done(function () {
    $.connection.chat.server.join('test');
});
一些资源: 尝试使用

$.connection.hub.start().done(function () {
    chat.server.join('test');
});
如果不起作用,请尝试不使用局部变量:

$.connection.hub.start().done(function () {
    $.connection.chat.server.join('test');
});
一些资源:

从SignalR 1.0开始,只能分别通过客户端和服务器名称空间访问客户端和服务器方法。州也有自己的名称空间

进行此更改是为了避免客户端和服务器方法之间的冲突。您的JS代码将更改为如下所示:

    $(function () {

        var chat = $.connection.chat;

        $('#userName').val(prompt('Enter your name:', ''));
        $('#groupName').val(prompt('Enter your groupName:', ''));

        chat.state.userName = $('#userName').val();
        chat.state.groupName = $('#groupName').val();

        chat.client.addMessage = function (userName, groupName, message) {
            $('#messages').append('<li><b>' + groupName + "." + userName + ":</b>" + message + '</li>');
            $('#msg').val('');
        };

        $("#broadcast").click(function () {
            chat.server.sendAll(chat.userName, chat.groupName, $('#msg').val());
        });

        $("#groupcast").click(function () {
            chat.server.sendGroup(chat.userName, chat.groupName, $('#msg').val());
        });

        $.connection.hub.start().done(function () {
            chat.server.join(chat.groupName);     //should no longer throw exception!!!!!!!!!
        });

        $.connection.hub.start();  

    });
$(函数(){
var chat=$.connection.chat;
$('#userName').val(提示('输入您的姓名:','');
$('#groupName').val(提示('输入您的组名:','');
chat.state.userName=$('#userName').val();
chat.state.groupName=$('#groupName').val();
chat.client.addMessage=函数(用户名、组名、消息){
$(“#消息”).append(“
  • ”+groupName+”+userName+”:“+message+”
  • ”); $('#msg').val(''); }; $(“#广播”)。单击(函数(){ chat.server.sendAll(chat.userName,chat.groupName,$('#msg').val()); }); $(“#群播”)。单击(函数(){ chat.server.sendGroup(chat.userName,chat.groupName,$('#msg').val()); }); $.connection.hub.start().done(函数(){ chat.server.join(chat.groupName);//不应再引发异常!!!!!!!!! }); $.connection.hub.start(); });
    从SignalR 1.0开始,客户端和服务器方法只能分别通过客户端和服务器名称空间访问。州也有自己的名称空间

    进行此更改是为了避免客户端和服务器方法之间的冲突。您的JS代码将更改为如下所示:

        $(function () {
    
            var chat = $.connection.chat;
    
            $('#userName').val(prompt('Enter your name:', ''));
            $('#groupName').val(prompt('Enter your groupName:', ''));
    
            chat.state.userName = $('#userName').val();
            chat.state.groupName = $('#groupName').val();
    
            chat.client.addMessage = function (userName, groupName, message) {
                $('#messages').append('<li><b>' + groupName + "." + userName + ":</b>" + message + '</li>');
                $('#msg').val('');
            };
    
            $("#broadcast").click(function () {
                chat.server.sendAll(chat.userName, chat.groupName, $('#msg').val());
            });
    
            $("#groupcast").click(function () {
                chat.server.sendGroup(chat.userName, chat.groupName, $('#msg').val());
            });
    
            $.connection.hub.start().done(function () {
                chat.server.join(chat.groupName);     //should no longer throw exception!!!!!!!!!
            });
    
            $.connection.hub.start();  
    
        });
    
    $(函数(){
    var chat=$.connection.chat;
    $('#userName').val(提示('输入您的姓名:','');
    $('#groupName').val(提示('输入您的组名:','');
    chat.state.userName=$('#userName').val();
    chat.state.groupName=$('#groupName').val();
    chat.client.addMessage=函数(用户名、组名、消息){
    $(“#消息”).append(“
  • ”+groupName+”+userName+”:“+message+”
  • ”); $('#msg').val(''); }; $(“#广播”)。单击(函数(){ chat.server.sendAll(chat.userName,chat.groupName,$('#msg').val()); }); $(“#群播”)。单击(函数(){ chat.server.sendGroup(chat.userName,chat.groupName,$('#msg').val()); }); $.connection.hub.start().done(函数(){ chat.server.join(chat.groupName);//不应再引发异常!!!!!!!!! }); $.connection.hub.start(); });
    那么您在
    配置()中放置了一个断点,而它没有被命中?断点是实心的(不是空心的)?您在@SpikeX中的回答是正确的。它在IIS下不会被命中,但在VS serer下会被命中。那么,要命中MapSignalR()函数的配置更改是什么呢?是否有需要在global.cs中运行的代码?因此,您在
    Configuration()
    中放置了一个断点,但它没有被命中?断点是实心的(不是空心的)?您在@SpikeX中的回答是正确的。它在IIS下不会被命中,但在VS serer下会被命中。那么,要命中MapSignalR()函数的配置更改是什么呢?是否有需要在global.cs中运行的代码?如果您查看我的页面代码,您的建议已经存在。我认为问题在于我的owin初创公司没有被解雇。??显然问题出在其他方面。幸运的是,我们在下面得到了一个答案,这个答案应该也能帮助其他人。如果你看一下我的页面代码,你的建议已经在那里了。我认为问题在于我的owin初创公司没有被解雇。??显然问题出在其他方面。幸运的是,我们在下面得到了一个答案,这个答案也可以帮助其他人。