05 2022 档案
摘要:
我们都以为Jwt三部分是用`Base64`加密,其实不完全对,因为他确切的加密方式是`Base64Url`加密,没有深入理解的我们只以为就是纯粹的base64,而且在大部分情况下确实是这样,更加坚定了我们这种错误认知。而只有当Base64加密后出现字符`+`或`/`时,才会有所不同,希望对大家有帮助。
阅读全文

摘要:.NET MAUI – 一个代码库,多个平台 欢迎使用 .NET 多平台应用 UI。此版本标志着我们统一 .NET 平台的多年旅程中的新里程碑。现在,您和超过 500 万其他 .NET 开发人员拥有了针对 Android、iOS、macOS 和 Windows 的一流跨平台 UI 堆栈,以补充 .N
阅读全文
摘要:前言 我们都知道依赖注入的方式常见的主要有三种 构造函数注入 属性注入 接口注入 在大名鼎鼎的Spring框架中大量使用属性注入的方式,属性注入的方式写起来那是真的爽;而在Asp.NetCore中则不支持属性注入,如果不使用第三方库,我们就只能在构造函数上写上一堆参数,比较麻烦,有些人是非常讨厌这种
阅读全文
摘要:前言 我们在项目中使用Redis时通常是写一个单例模式的RedisHelper静态类,暴露一些常用的Get、Set等操作,在需要使用地方直接RedisHelper.StringGet(xx,xx)就可以了,这样虽然简单粗暴地满足我们对Redis的所有操作需要,但是这在Asp.Net Core的项目显
阅读全文
摘要:前言 Asp.Net Core中有一个不受人重视的属性HttpContext.TraceIdentifier,它在链路追踪中非常有用,下面是官方的定义: 在项目中一般会将该字段输出到每一条日志中,也可以将此Id作为通用响应字段返回前端,后续可以根据该属性和日志匹配,快速定位整个链路日志。在本地开发时
阅读全文
摘要:前言 先看简单的题目,看看你能不能答对 // See https://aka.ms/new-console-template for more information Console.WriteLine("Hello, World!"); string v1 = null; string v2 =
阅读全文
摘要:前言 限流是应对流量暴增或某些用户恶意攻击等场景的重要手段之一,然而微软官方从未支持这一重要特性,AspNetCoreRateLimit这一第三方库限流库一般作为首选使用,然而其配置参数过于繁多,对使用者造成较大的学习成本。令人高兴的是,在刚刚发布的.NET 7 Preview 4中开始支持限流中间
阅读全文
摘要:VueRouterHistory 用于Vue单页面应用,使用VueRouter的History模式下,通过AspNetCore提供文件服务。 前言 用过VueRouter路由组件的应该都知道,VueRouter有hash和history两种模式。hash模式会在url中插入#,history模式下u
阅读全文
摘要:UseMiddlewareExtensions 前言 本文编写时源码参考github仓库主分支。 aspnetcore提供了Use方法供开发者自定义中间件,该方法接收一个委托对象,该委托接收一个RequestDelegate对象,并返回一个RequestDelegate对象,方法定义如下: IA
阅读全文