.net core使用Jwt授权验证

最近学习了下.net core使用Jwt的授权验证,写个笔记加深印象。.net core中已经集成了Jwt,只需要添加引用即可,比较简单。使用的.net core2.2版本
没有详细解释Jwt相关信息,只做实际应用,网上有很多相关资料自行查阅
1、创建一个.net core api项目,以下为项目结构
在这里插入图片描述
2、项目创建好之后新建一个名为Models的文件夹(存放接口返回统一格式数据的类)
ResponseResult类

public class ResponseResult
    {
   
        [JsonProperty("code", Order = 1)]
        public HttpStatusCode Code {
    get; set; }

        [JsonProperty("message", Order = 2)]
        public string Message {
    get; set; }
    }
    public class ResponseResult<T> : ResponseResult where T : class
    {
   
        [JsonProperty("data", Order = 3)]
        public T Data {
    get; set; }
    }

TokenResponseResult类


    public class TokenResponseResult
    {
   
        public string UserId {
    get; set; }
        public string Token {
    get; set; }
    }

3、在配置文件appsettings.Development.json中添加以下配置信息

  "JwtSettings": {
   
    "Issuer": "http://localhost:44327",//域名
    "Audience": "http://localhost:44327",
    "SecretKey": "kzFdzMSWBhIM1HHKm8HowWUQivpQEbqp" //可以去网上自己生成key
  }

4、在Startup.cs中添加以下代码
在ConfigureServices方法中注册Jwt中间件

//添加jwt验证
            services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
                    .AddJwtBearer(options =>
                    {
   
                        options.RequireHttpsMetadata = false;
                        options.SaveToken = true;
                        options.TokenValidationParameters = new TokenValidationParameters
                        {
   
                            /* 
                           * Claims (Payload)
                              Claims 部分包含了一些跟这个 token 有关的重要信息。 JWT 标准规定了一些字段,下面节选一些字段:

       
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值