摘要:
.net开发体系里,大部分本地化的实现都是用资源文件实现(.resx),asp.net core中的多语Culture是指区域性的对象,而UICulture 该对象表示资源管理器在运行时查找区域性特定资源时所用的当前用户接口区域性。 asp.net core实现也是通过添注入本地化服务,和添加中间件 阅读全文
摘要:
JWT不管是基于角色,还是自定义策略,实现的步骤都是大同小异的,基于自定义策略的步骤如下: 1、appsettings.json中配置JWT参 2、添加身份认证和授权服务和中间件,并设置为策略模式和策略名称 3、定义生成Token的方法和验证Toekn参数的方法 4、登录时验证身份并分发Toekn 阅读全文
摘要:
身份验证是这样一个过程:由用户提供凭据,然后将其与存储在操作系统、数据库、应用或资源中的凭据进行比较。 在授权过程中,如果凭据匹配,则用户身份验证成功,可执行已向其授权的操作。 授权指判断允许用户执行的操作的过程。也可以将身份验证理解为进入空间(例如服务器、数据库、应用或资源)的一种方式,而授权是用 阅读全文
摘要:
说明:本篇简单说一下日志中常用的几个点,关于日志,后面重点会说到三方日志提供程序 在MiniAPI中,可以通过方法或构造函数中,获取框架自动注入的日志类型,如下方式: app.MapGet("/test", (ILogger<Program> logger) => { logger.LogInfor 阅读全文
摘要:
http协议,是由客户端发出请求,服务端响应结果并返回,我们把这个请求来回抽象成一个请求管道,那中间件就是这个管道上的阀门,控制着流量的进出和中断。每一个请求都要经过中间件的过滤,滤掉不合格的请求,放行合格的请求,比如用户验证,只有授权的用户通过,没有授权的用户挡在门外。 中间件的定义非常简单,如下 阅读全文
摘要:
在OOP里有依赖倒置原则 (The Dependency Inversion Principle),意思是 高层模块不应该依赖于底层模块,二者都应该依赖于抽象。换句话说,依赖于抽象,不要依赖于具体实现。 如下图,在完成订单后要调用快送模块,这时就依赖快递模块的接口,而不是具体的快递模块。 依赖关系注 阅读全文
摘要:
首先声明,这不是写一个高性能应用的唯一选择,只是自己实践后的一些心得分享。 开发前定个小目标 有目标的好处是不会降配开发,也不会过度开发目标指标:并发数,TPS,响应时间等 1、模块独立性让路高性能: 在做业务模块逻辑时通盘考虑,必要时业务功模块的独立性要为高性能让路,比如对集合的操作,如果多个模块 阅读全文
摘要:
选项是配置一个升级版,一般情况下是把一个范围内的配置包装成类型,以供使用,比如下面的RedisSetting,是Redis的配置参数: { "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Wa 阅读全文
摘要:
配置文件,是一个每个应用服务程序常用的功能,从原来的终端应用时代,到现在的元宇宙时代,配置都是很悠然自得的存在。asp.net core提供了强大的配置文件访问机制,不管是MVC API还是MiniAPI,使用方式都是相同的。 框架默认的配置文件是:appsettings.json,可以以json的 阅读全文