none
SignalR 2.4.0.0 使用问题 前台提交数据大小是否有限制? RRS feed

  • 问题

  • 我在前台页面创建了一个公共对象 hubConnection,在网页加载后就开启websocket并把这个对应给到hubConnection 在需要操作的按钮事件里像DOME中的一样去操作后台方法, 当我做上传功能时,把本地文件转成Base64做成对象如以下对象 {data:[{filename:'',fileData:'base64'}]} ,然后后台用DataSet去接收, 这个后台方法有时候调的到有时候调不到,调不到时前台报错:Connection started reconnecting before invocation result was received.   当报出这个错误时,发送消息正常.只是调用上传的功能出错.也尝试过把对象直接 转成json 后台用string 接收结果一样.(后面再次测试了一下,只有一个wav 大小 248K的音频文件上传不了 还有另外  两个20多K wav可以上传)

    

    2019年3月7日 2:37

全部回复

  • 问题已经解决, 代码如下  ,使用Signalr MessageSize默认是64K 大小,这里设为NULL即禁用这个限制 ,自己也可以按需求改为自己需要的大小

    public class Startup
        {
            public void Configuration(IAppBuilder app)
            {
                // 有关如何配置应用程序的详细信息,请访问 http://go.microsoft.com/fwlink/?LinkID=316888
                //服务器的hub注册
                app.MapSignalR();
                //禁用数据传输大小限制 
                GlobalHost.Configuration.MaxIncomingWebSocketMessageSize = null;
    
            }
        }


                
    2019年3月8日 1:09