c# Signalr报错:消息大小超出了最大限制32kB。消息大小可在AddHubOptions中配置。

c# Signalr报错:消息大小超出了最大限制32kB。消息大小可在AddHubOptions中配置。

csharp 复制代码
The maximum message size of 32kB was exceeded. The message size can be configured in AddHubOptions.

报错位置是:

csharp 复制代码
  public override async Task OnDisconnectedAsync(Exception? exception)
  {
      if (exception != null) {
          //记录错误日志
          //The maximum message size of 32kB was exceeded. The message size can be configured in AddHubOptions.
      }
     
      await base.OnDisconnectedAsync(exception);
  }

参考微软官方文档:在这里插入图片描述

https://learn.microsoft.com/zh-cn/aspnet/core/signalr/hubs?view=aspnetcore-10.0

解决办法:

在Program.cs 文件中增加: options.MaximumReceiveMessageSize = 2097152;将限制改为2M

参考微软官方文档:https://learn.microsoft.com/zh-cn/aspnet/core/signalr/configuration?view=aspnetcore-10.0&tabs=dotnet

csharp 复制代码
builder.Services.AddSignalR().AddHubOptions<ChatHub>(options =>
{
    options.EnableDetailedErrors = true;
    options.MaximumReceiveMessageSize = 2097152;//2 * 1024 * 1024;  2MB  限制改为2M
}) .AddJsonProtocol(options =>
    {
        // 禁用驼峰命名法,保留原始属性名
        options.PayloadSerializerOptions.PropertyNamingPolicy = null;
        // 允许未定义属性(避免旧客户端缺失字段时报错)
        options.PayloadSerializerOptions.WriteIndented = false;
        options.PayloadSerializerOptions.DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingDefault;
       
    });
相关推荐
raindayinrain11 分钟前
c++高性能--原子操作,无锁编程,操作顺序
开发语言·c++·性能优化
学逆向的20 分钟前
C++ 合并命名空间
开发语言·c++·网络安全
Zhao-Jichao26 分钟前
VS2026 打包 C++ 程序生成 EXE,借助 Installer Project 扩展工具
开发语言·c++
学逆向的1 小时前
C 局部静态变量
c语言·开发语言·网络安全
大都督会赢的2 小时前
C++第一节课
开发语言·c++
“AI国潮设计-小江”2 小时前
【AIGC实战】Python+Stable Diffusion打造“英歌舞财神”IP,解锁“马到成功”等爆款情绪营销文案设计
开发语言·人工智能·python·prompt·aigc
小王C语言2 小时前
Qt常用控件:容器类控件,标题分组框、标签页(浏览器标签)
开发语言·qt
我是唐青枫3 小时前
Kotlin Delegation 委托详解
开发语言·kotlin
qq_406981033 小时前
共享变量一 关于extern与const
开发语言·c++
FRing033 小时前
JavaScript入门到精通三十二(深拷贝、浅拷贝、递归函数)
开发语言·前端·javascript