最近做了个消息推送。
通过IIS配置好了,测试是没问题的。
但是部署到服务器前,在另一台电脑又配置了一遍,跨域就出问题了。
这是接收推送消息项目的Startup.csusing System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.Owin;
using Owin;
using Microsoft.Owin.Cors;
using LeaRun.WebApp;[assembly: OwinStartupAttribute(typeof(Startup))]
namespace LeaRun.WebApp
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            //app.MapSignalR<MyConnection1>("/myconnection");
            app.Map("/myconnection",
             map =>
             {
                 map.UseCors(CorsOptions.AllowAll);
                 map.RunSignalR<MyConnection1>();
             }
         );
        }
    }
}
 
这个是发送消息的js代码: var conn = $.connection("http://***.***.*.**:****/myconnection");
    
    conn.start().done({ jsonp: true });
    function aaa() {
        conn.start().done(function (data) {
            var msg = "123";
            conn.send(msg);//发送给服务器
        });
    };但是在打开页面就会
 
请问这要怎么弄啊?
代码和可以正常推送的项目是一样的。推送消息的项目是同一个。
是哪里设置不对了么?或者是防火墙?

解决方案 »

  1.   

    https://blog.csdn.net/u011508145/article/details/79495596
      

  2.   


     app.Map("/echo", map =>
                {
                    map.UseCors(CorsOptions.AllowAll);
                    var hubConfiguration = new HubConfiguration
                    {
                        EnableJSONP = true,//跨域的关键语句
                        EnableJavaScriptProxies = false,
                        EnableDetailedErrors = true
                    };
                    map.RunSignalR(hubConfiguration);
                });
                app.MapSignalR();