zoukankan      html  css  js  c++  java
  • 学习jwt的简单使用

    install-package jwt

            protected void ButtonLogin_Click(object sender, EventArgs e)
            {
                var secret = "abc123";
                var exp = (DateTime.UtcNow.AddSeconds(10) - new DateTime(1970, 1, 1)).TotalSeconds;
                var payload = new Dictionary<string, object> {
                    {"Name",TextBoxName.Text },
                    { "Pwd",TextBoxPwd.Text },
                    { "exp",exp }
                };
                var algorithm = new HMACSHA256Algorithm();
                var jsonSerializer = new JsonNetSerializer();
                var urlEncoder = new JwtBase64UrlEncoder();
                var encoder = new JwtEncoder(algorithm, jsonSerializer, urlEncoder);
                var token = encoder.Encode(payload, secret);
                TextBox1.Text = token;
            }
            protected void Button1_Click(object sender, EventArgs e)
            {
                var secret = "abc123";
                var token = TextBox1.Text;
                try
                {
                    var algorithm = new HMACSHA256Algorithm();
                    var jsonSerializer = new JsonNetSerializer();
                    var dateTimeProvider = new UtcDateTimeProvider();
                    var jwtValidator = new JwtValidator(jsonSerializer, dateTimeProvider);
                    var urlEncoder = new JwtBase64UrlEncoder();
                    var decoder = new JwtDecoder(jsonSerializer, jwtValidator, urlEncoder, algorithm);
                    var json = decoder.Decode(token, secret, true);
                    Label1.Text = json;
                }
                catch (TokenExpiredException)
                {
                    Label1.Text = "过期";
                }
                catch (SignatureVerificationException)
                {
                    Label1.Text = "篡改";
                }
            }

  • 相关阅读:
    八、基本数据结构(图形结构)
    七、基本数据结构(树形结构)
    4、使用 ImportTsv 将 Hive 数据导入 Hbase
    六、跳表
    五、二分法查找
    四、归并排序 && 快速排序
    一、kafka 介绍 && kafka-client
    三、排序之冒泡、插入、选择
    二、YARN
    三、synchronized & lock
  • 原文地址:https://www.cnblogs.com/mmclog/p/14167826.html
Copyright © 2011-2022 走看看