Signalr linqpad中的自托管信号器 脚本

Signalr linqpad中的自托管信号器 脚本,signalr,linqpad,Signalr,Linqpad,我正在尝试使用linqpad来自托管信号器 剧本 但是,在控制台应用程序中,同样的代码可以正常工作 问题: 有人知道为什么这段代码在linqpad中托管时失败,但在控制台应用程序中托管时有效吗?我倾向于某种连接问题,而不是linqpad问题,因为我能够运行您的代码,而不会出现问题。我还在版本5下运行它。你有3r方防火墙吗 只是想确认一下,预期的行为是什么?当我运行它时,我的浏览器会弹出,要求我输入一个名称。然后我就可以发送“消息”,出现在文本框下方的页面上。我倾向于某种连接问题,而不是LinqP

我正在尝试使用linqpad来自托管信号器

剧本 但是,在控制台应用程序中,同样的代码可以正常工作

问题:
有人知道为什么这段代码在linqpad中托管时失败,但在控制台应用程序中托管时有效吗?

我倾向于某种连接问题,而不是linqpad问题,因为我能够运行您的代码,而不会出现问题。我还在版本5下运行它。你有3r方防火墙吗


只是想确认一下,预期的行为是什么?当我运行它时,我的浏览器会弹出,要求我输入一个名称。然后我就可以发送“消息”,出现在文本框下方的页面上。

我倾向于某种连接问题,而不是LinqPad问题,因为我可以运行您的代码,而不会出现任何问题。我还在版本5下运行它。你有3r方防火墙吗


只是想确认一下,预期的行为是什么?当我运行它时,我的浏览器会弹出,要求我输入一个名称。然后,我可以发送“消息”,显示在文本框下方的页面上。

您的LinqPad版本是什么?我正在使用LinqPad 5您的LinqPad版本是什么?我正在使用LinqPad 5只是再次测试它,它现在似乎正在工作。。感谢您的帮助再次测试它,它现在似乎正在工作。。谢谢你的帮助
// I have uploaded to instant share here: http://share.linqpad.net/578ol2.linq 

// Import the following nuget packages:
// Microsoft.AspNet.SignalR.SelfHost
// Microsoft.Owin.Cors

#define NONEST

void Main()
{
    var baseUrl = @"http://localhost:8080/";

    using (WebApp.Start<Startup>(baseUrl))
    {
        Process.Start(baseUrl + "index.html");

        Console.WriteLine("Server running at " + baseUrl);
        Console.ReadLine();
    }
}

public class Startup
{
    public readonly string Html = @"
<!DOCTYPE html>
<html>
<head>
    <title>SignalR Simple Chat</title>
</head>
<body>
    <div class='container'>
        <input type='text' id='message' />
        <input type='button' id='sendmessage' value='Send' />
        <input type='hidden' id='displayname' />
        <ul id='discussion'></ul>
    </div>
    <script src='https://code.jquery.com/jquery-1.6.4.js'></script>
    <script src='http://ajax.aspnetcdn.com/ajax/signalr/jquery.signalr-2.2.0.js'></script>
    <script src='http://localhost:8080/signalr/hubs'></script>

    <script type='text/javascript'>
        $(function () {
            $.connection.hub.url = 'http://localhost:8080/signalr';
            $.connection.hub.logging = true;

            var chat = $.connection.myHub;

            chat.client.addMessage = function (name, message) {
                var encodedName = $('<div />').text(name).html();
                var encodedMsg = $('<div />').text(message).html();

                $('#discussion').append('<li><strong>' + encodedName + '</strong>:&nbsp;&nbsp;' + encodedMsg + '</li>');
            };

            $('#displayname').val(prompt('Enter your name:', ''));
            $('#message').focus();

            $.connection.hub.start().done(function () {
                $('#sendmessage').click(function () {
                    chat.server.send($('#displayname').val(), $('#message').val());
                    $('#message').val('').focus();
                });
            });
        });
    </script>
</body>
</html>
".Trim();

    public void Configuration(IAppBuilder app)
    {
        app.UseCors(CorsOptions.AllowAll);
        app.MapSignalR();

        app.Map("/index.html", config =>
        {
            config.Run(context => 
            {
                context.Response.ContentType = "text/html";
                return context.Response.WriteAsync(Html);
            });
        });
    }
}

public class MyHub : Hub
{
    public void Send(string name, string message)
    {
        Clients.All.addMessage(name, message);
    }
}
SignalR: Client subscribed to hub 'myhub'.
Negotiating with 'http://localhost:8080/signalr/negotiate?clientProtocol=1.5&connectionData=%5B%7B%22name%22%3A%22myhub%22%7D%5D'.
serverSentEvents transport starting.
Attempting to connect to SSE endpoint 'http://localhost:8080/signalr/connect?transport=serverSentEvents&clientProt…joHW8a9m5Q%3D%3D&connectionData=%5B%7B%22name%22%3A%22myhub%22%7D%5D&tid=1'.
EventSource connected.
serverSentEvents transport timed out when trying to connect.
EventSource calling close().
serverSentEvents transport failed to connect. Attempting to fall back.
foreverFrame transport starting.
Forever Frame is not supported by SignalR on browsers with SSE support.
foreverFrame transport failed to connect. Attempting to fall back.
longPolling transport starting.
Opening long polling request to 'http://localhost:8080/signalr/connect?transport=longPolling&clientProtocol=…QeRv75joHW8a9m5Q%3D%3D&connectionData=%5B%7B%22name%22%3A%22myhub%22%7D%5D'.
longPolling transport timed out when trying to connect.
Aborted xhr request.
longPolling transport failed to connect. Attempting to fall back.
Fallback transports exhausted.
Stopping connection.
Fired ajax abort async = true.