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;
       
    });
相关推荐
被子你放开我15 分钟前
CRMEB PHP多商户升级4.0太麻烦了
开发语言·php
阿里嘎多学长16 分钟前
2026-06-01 GitHub 热点项目精选
开发语言·程序员·github·代码托管
醒醒该学习了!30 分钟前
Anaconda安装教程+第一个python例子
开发语言·python
在繁华处2 小时前
Java从零到熟练(九):并发编程基础
java·开发语言
木头程序员2 小时前
SSM框架学习笔记
java·开发语言·mysql·spring·maven
一起逃去看海吧2 小时前
dify-03
java·linux·开发语言
xiaoshuaishuai83 小时前
C# AvaloniaUI 资源找不到报错
java·服务器·前端·windows·c#
Xin_ye100863 小时前
C# 零基础到精通教程 - 第十八章:部署与发布——让应用上线
开发语言·c#
思麟呀4 小时前
C++11并发编程:call_once一次性执行+atomic原子类型+CAS无锁编程+自旋锁
linux·开发语言·jvm·c++·windows