代码之家  ›  专栏  ›  技术社区  ›  SylvainB2347

WPF net core signar invokeoreasync exception“不完整消息”

  •  0
  • SylvainB2347  · 技术社区  · 5 年前

    我有一个wpfnetcore5.0应用程序在远程应用程序上调用一个信号集线器(也在netcore5.0中) 使用signalr,我试图在一个遥远的signalr集线器上获取一个文件(大小50Mo)。

    我的signarclient在WPF应用程序上实例化,signarhub在web上的另一个应用程序上

    SignalRObject responseSignalR =
                                await connection.InvokeCoreAsync<SignalRObject>("GetDataFromClientSignalR", new object[] { null /* objectParameter */,
                                                                                                                workerLocalGuid /* windowsServiceCode */,
                                                                                                                workerToken /* authToken */,
                                                                                                                apiUrl /* apiUrl */,
                                                                                                                "get" /* crudOperation */ });
    

    以下是我在信号服务器上的配置:

    services.Configure<HubOptions>(options =>
                {
                    options.MaximumReceiveMessageSize = null;
                    options.StreamBufferCapacity = null;
                    options.EnableDetailedErrors = true;
                    //options.ClientTimeoutInterval = new TimeSpan(0, 1, 0);
                    //options.KeepAliveInterval = new TimeSpan(0, 0, 30);
                    options.ClientTimeoutInterval = new TimeSpan(0, 2, 0);
                    options.KeepAliveInterval = new TimeSpan(0, 1, 0);
                });
    
    app.UseEndpoints(endpoints =>
                {
                    endpoints.MapControllerRoute(
                        name: "default",
                        pattern: "{controller=Home}/{action=Index}/{id?}");
                    endpoints.MapHub<ServeurCentralSignalR>("/ServeurCentralSignalR", options => 
                    {
                        options.ApplicationMaxBufferSize = 0; // settings to 0 suppress the limit ?
                        options.TransportMaxBufferSize = 0; // settings to 0 suppress the limit ?
                    });
                });
    

    当我尝试获取一个大约5Mo的小文件时,一切正常,但是当我尝试获取一个更大的文件(50mo)时,我在wpf应用程序上收到来自InvokeCoreAsync的以下异常:“Incomplete message”

    我想是因为反应太大了。 在我的wpf上哪里可以配置它?

    0 回复  |  直到 5 年前