当前位置: 首页 > news >正文

深圳网站设计教程南宁建站官网

深圳网站设计教程,南宁建站官网,高权重域名购买,没网站域名可以做备案吗前言 最近自己又在开始闲搞#xff0c;主要原因还是下山无望#xff08;买显卡#xff09;。只能晚上下班找点事情做啦~~ 环境 版本请根据实际情况参考JJWT官网选择使用#xff0c;这里只说明一下问题大概思路#xff01; !-- 增加token生成依赖 -- depen…前言 最近自己又在开始闲搞主要原因还是下山无望买显卡。只能晚上下班找点事情做啦~~ 环境 版本请根据实际情况参考JJWT官网选择使用这里只说明一下问题大概思路 !-- 增加token生成依赖 -- dependencygroupIdio.jsonwebtoken/groupIdartifactIdjjwt-api/artifactIdversion0.11.4/version /dependency dependencygroupIdio.jsonwebtoken/groupIdartifactIdjjwt-impl/artifactIdscoperuntime/scopeversion0.11.4/version /dependency !-- 该依赖根据当前项目json解析器选择: 如果选择gson 则引入 jjwt-gson -- !-- 需要自定义序列化器, 需注释掉runtime域 -- dependencygroupIdio.jsonwebtoken/groupIdartifactIdjjwt-jackson/artifactIdversion0.11.4/version !--scoperuntime/scope-- /dependency问题 最近在重新学习SpringSecurity JJWT完成整体令牌… 然后就遇到了下面的问题… 简单描述下问题的根本就是JJWT源码中会寻找当前项目默认使用 ‘JacksonSerializer’ 源码贴出来看一下可以看出来如果没有通过构造方法传入一个新的ObjectMapper时默认使用最基本的对象来进行序列化操作。而默认new出来最基本的序列化对象是不支持序列化LocalDateTime的。 JJWT中JacksonSerializer源码 static final ObjectMapper DEFAULT_OBJECT_MAPPER new ObjectMapper();private final ObjectMapper objectMapper;SuppressWarnings(unused) //used via reflection by RuntimeClasspathDeserializerLocatorpublic JacksonSerializer() {this(DEFAULT_OBJECT_MAPPER);}SuppressWarnings(WeakerAccess) //intended for end-users to use when providing a custom ObjectMapperpublic JacksonSerializer(ObjectMapper objectMapper) {Assert.notNull(objectMapper, ObjectMapper cannot be null.);this.objectMapper objectMapper;} 错误结果 解决办法 解决问题首先思路肯定是从源码出发我们从源码中可以看出来JJWT已经为我们预留了重写默认ObjectMapper的方式了既然这样最简单的解决方式就是利用 ‘JacksonSerializer’ 中的有参构造来覆写入支持序列化 ‘LocalDateTime’ 的ObjectMapper就可以了. 当然接下来肯定有人要问了这个构造方法应该在什么时候调用呢 别着急嘛正要说到这里~~ JJWT目前提供的计算令牌的方式是通过 ‘Jwts’ 类来进行链式调用完成令牌计算解析的。 示例如下 // 获取令牌 Jwts.builder().setClaims(claims).signWith(secretKey(secret)).compact(); // 解析令牌 Jwts.parserBuilder().setSigningKey(secretKey(secret)).build().parseClaimsJws(token).getBody();既然知道这个类主要提供给我们用来操作的那我们就可以在类中查找一下是否提供了序列化的方法。最好还是先查看文档哦避免盲目寻找浪费时间这里我就直接贴出来官方的翻译仅供参考 自定义 JSON 处理器 如果您不想使用 JJWT 的运行时依赖方式或者只是想自定义 JSON 序列化和反序列化的工作方式则可以实现 Serializer 和 Deserializer 接口并分别在 JwtBuilder 和 JwtParserBuilder 上指定它们的实例。例如 When creating a JWT(创建JWT时): //implement meJwts.builder().serializeToJsonWith(serializer)// ... etc ... When reading a JWT(读取 JWT 时): getMyDeserializer(); //implement meJwts.parserBuilder().deserializeJsonWith(deserializer)// ... etc ... w(Д)w 看完文档是不是豁然开朗接下来只需要将自定义可以序列化万物的 serializer 交出来就可以了~ // PS. 这是两个分开的方法哦 记住了吗~ Jwts.builder()// 使用项目配置的json序列化器.serializeToJsonWith(new JacksonSerializer(JsonUtil.MAPPER)).setClaims(claims).signWith(secretKey(secret)).compact(); // ---------------------------------- Jwts.parserBuilder().deserializeJsonWith(new JacksonDeserializer(JsonUtil.MAPPER)).setSigningKey(secretKey(secret)).build().parseClaimsJws(token).getBody();测试验证结果 ؏؏☝ᖗ乛◡乛ᖘ☝؏؏ 验证通过完结撒花~ 对了还有配置ObjectMapper LocalDateTime序列化器的方法我就不单独贴出来了有很多现成的可以度娘自行获取 ┏(0)┛
http://www.zqtcl.cn/news/279435/

相关文章:

  • 做网站的用什么软件呢网站排名优化服务公司
  • 网站开发完整视频网站集约化建设较好的城市
  • 网站建设和平面设计应用网站如何做
  • 自己做网站需要多少费用asa8.4 做网站映射
  • 商业网站 模板黑龙江省建设厅安全员考试
  • 网站新备案不能访问室内装修网站模板
  • 工程师报考网站wordpress设置视频图片不显示图片
  • 徐州网站建设公司排名成都住建平台
  • 用来备案企业网站国外免费外贸网站
  • 网页背景做的比较好的网站做一个企业网站价格
  • 免费制图网站县级门户网站建设的报告
  • 北京网站建设网怎么用手机做一个网站
  • 网站建设管理办法关于公司门户网站建设的议案
  • 网站开发入职转正申请书体验好的网站
  • 在线精品课程网站开发网站备案号怎么修改
  • 网站建设 风险百度热搜的含义
  • 怎样创作网站公司做网站 要准备哪些素材
  • 网站上的平面海报怎么做南阳企业做网站
  • 佛山公众平台网站推广多少钱wordpress如何调用分类目录
  • 网站推广应该注意什么信息发布平台推广
  • 官方网站案例做网站私活在哪接
  • 做网站滨州wordpress 不同域名
  • 找人做设计的网站广州做网站(信科网络)
  • 如何选择网站做站方向青之峰网站建设
  • 福州哪家网站制作设计高端还实惠设计logo的理念
  • 吉林市网站建设促销式软文案例
  • 三门峡市建设局网站网站开发费用是否资本化
  • 建设部网站官网 施工许可杭州萧山网站开发
  • 福建省建设资格注册管理中心网站竹子建站怎么样
  • 想做一个什么样的网站网站建设功能评价指标