zoukankan      html  css  js  c++  java
  • .net core webapi

    JWT身份认证

     加密

    UserAuthModel userAuthModel = new UserAuthModel()
    {
    id = Guid.NewGuid().ToString(),
    userName = userName,
    loginTime = DateTime.Now
    };
    IJwtAlgorithm algorithm = new HMACSHA256Algorithm();
    IJsonSerializer serializer = new JsonNetSerializer();
    IBase64UrlEncoder urlEncoder = new JwtBase64UrlEncoder();
    IJwtEncoder encoder = new JwtEncoder(algorithm, serializer, urlEncoder);
    var token = encoder.Encode(userAuthModel, "jjf12554");

    解密

    var token = context.HttpContext.Request.Headers["token"];
    if (token == "")
    {
    throw new NotImplementedException();
    }
    try
    {
    IJsonSerializer serializer = new JsonNetSerializer();
    IDateTimeProvider provider = new UtcDateTimeProvider();
    IJwtValidator validator = new JwtValidator(serializer, provider);
    IBase64UrlEncoder urlEncoder = new JwtBase64UrlEncoder();
    IJwtDecoder decoder = new JwtDecoder(serializer, validator, urlEncoder);
    var json = decoder.Decode(token, "jjf12554", verify: true);//token为之前生成的字符串
    UserAuthModel userAuthModel = (UserAuthModel)JsonConvert.DeserializeObject<UserAuthModel>(json);
    Console.WriteLine(json);
    }
    catch (TokenExpiredException)
    {
    Console.WriteLine("Token has expired");
    }

    缓存类

  • 相关阅读:
    【YbtOJ#20064】预算缩减
    【GMOJ6805】模拟speike
    【洛谷P5675】取石子游戏
    【YbtOJ#20061】波动序列
    【洛谷P4302】字符串折叠
    flash 上传文件
    HTTP 客户端发送的 头 格式
    FLEX 在本地使用 只访问本地文件
    as3 重写
    iis7 上传限制问题
  • 原文地址:https://www.cnblogs.com/zhaocha/p/9242097.html
Copyright © 2011-2022 走看看