Asp.Net Core 6 与 SignalR 使用 JWT 身份验证

JWT 是什么? 这一点网上有很多的描述了,在此就不多赘述。总之,JWT 的 Token 通常由三部分组成:Header,Payload 和 Signature. Header 中包含了该 Token 所使用的签名算法;Payload 中则含有一些需要传递的信息;Signature 则是对 Header 和 Payload 的签名,用以校验前两部分有没有被篡改。 在 Asp.Net Core Web Api 中集成 JWT 安装 Nuget 包 首选我们需要安装三个 Nuget 包,分别是: Microsoft.AspNetCore.Authentication.JwtBearer Microsoft.IdentityModel.Tokens; System.IdentityModel.Tokens.Jwt; JWT 相关参数配置 在appsettings.json文件中,我们添加以下配置: "JwtConfiguration": { "AccessSecret": "123456", "RefreshSecret": "654321", "Issuer": "this", "Audience": "that", "AccessExpiration": 3600, "RefreshExpiration": 2592000, "ClockSkew": 60 } 以上配置中,具体字段名和内容可以自行修改。 然后我们新建一个类,用于反序列化配置内容: /// <summary> /// JWT Token配置 /// </summary> public class JwtConfiguration { /// <summary> /// AccessToken密钥 /// </summary> public string AccessSecret { get; set; } = string....

March 9, 2022 · 4 分钟 · Remo

React使用Day.js通过Vite发布后报错

问题描述 最近在React项目中使用了 Day.js 来处理需要在 Ant Design 列表中显示的一个时间数据,在本地开发过程中一直没出问题,vite build发布以后,列表每次加载数据都会报错:TypeError: $ is not a function以及Error: Minified React error #31;. 后面发现将使用 Day.js 相关方法注释后,加载数据就恢复正常了。经过搜索,发现这篇博文,虽然文中的报错信息和我遇到的不一样,但是解决方式是相同的。 解决方式 不要使用 import dayjs from 'dayjs'或者 import * as dayjs from 'dayjs' 方式引入 Day.js ,应当改用: import dayjs from 'dayjs/esm/index.js' 这样修改后,就可以正常使用了。

January 12, 2022 · 1 分钟 · Remo