Json中怎么利用string表示Number属性值
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章将为大家详细讲解有关Json中怎么利用string表示Number属性值,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。long类型引发的诡异情
千家信息网最后更新 2026年11月04日Json中怎么利用string表示Number属性值
这篇文章将为大家详细讲解有关Json中怎么利用string表示Number属性值,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
long类型引发的诡异情况
长话短说,同事在利用swagger对接后端API时,诡异的发现swaggerUI中显示的json属性值并不是api返回的值。
[HttpGet]
public IActionResult QueryAsync()
{
var testJson = new
{
Id = 123123126964992223,
Profile = "Please attention on Id",
};
return new JsonResult(testJson);
}
该API在swagger输出:
{"Id": 123123126964992220,
"Profile": "Please attention on Id"}
进一步从Chrome->[Network]->[Preview]、[Response payload]观察到该long属性值的差异。
直接给结论:部分long类型值(最大值2^63^-1)会超过Javascript的最大安全Number(2^53^-1), 浏览器/前端 使用JSON.parse(123123126964992223)将不再保证准确性。

将JSON中的数字值作为字符串传输的是为了消除传输中的精度丢失或歧义性。
JSON规范中未给数值指定精度,JSON解析器会自由选择合适的数值精度。如果您的应用程序具有特定的精度要求,那么不同的JSON解析器可能不能正确表达精度。
另外部分long类型值(最大值263-1)会超过Javascript的最大安全Number(253 -1), 前端json反序列化时也会出现错误。
stackoverflow有个解释很赞:
覆写.NET Core序列化框架,将long转化为string
针对NewtonsoftJson编写BigIntJsonConvert
public class BigIntJsonConverter : JsonConverter
{
public override long ReadJson(JsonReader reader, Type objectType, [AllowNull] long existingValue, bool hasExistingValue, JsonSerializer serializer)
{
var flag = long.TryParse(reader.Value.ToString(), out long num);
return flag == true ? num : 0;
}
public override void WriteJson(JsonWriter writer, [AllowNull] long value, JsonSerializer serializer)
{
writer.WriteValue(value.ToString());
}
}
// 截取自Startup.cs ConfigureServices函数
context.Services.AddMvc().AddNewtonsoftJson(options =>
{
options.SerializerSettings.Converters.Add(new BigIntJsonConverter());
});
关于Json中怎么利用string表示Number属性值就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
精度
属性
最大
类型
诡异
安全
内容
前端
序列
数值
文章
更多
最大值
知识
篇文章
部分
传输
不同
不错
合适
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
上海挚品互联网科技有限公司
互联网科技有限公司图片
科技企业和互联网企业
互联网 科技创业
互联网科技ppt模板
互联网科技网站
长亮科技 互联网金融
创业天下互联网科技有限公司
成都互联网科技公司100强
阿大互联网科技有限公司
互联网金融科技展
互联网数据科技专业
南京一网一红互联网科技有限公司
艺电能源互联网科技有限公司招聘
唯美互联网科技
绵阳真晨互联网科技有限公司
互联网科技对化妆品行业
互联网对科技影响
杭州科技互联网公司有哪些
华人运通互联网科技公司
科技平台互联网
互联网金融监管科技数据
齐家互联网科技
润盈互联网科技
互联网高科技股票
盛创互联网科技有限公司
玖二柒互联网科技公司待遇
迪庆互联网科技招生
湖北辰鑫科技互联网
利用互联网等科技手段