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 = "篡改";
                }
            }

  • 相关阅读:
    The Worm Turns
    Equations
    Snail’s trouble
    WuKong
    Codeforces 369 C Valera and Elections
    POJ 2186 Popular Cows
    Codefroces 366 D Dima and Trap Graph (最短路)
    Codefroces 366 C Dima and Salad(dp)
    Codefroces 374 B Inna and Sequence (树状数组 || 线段树)
    Codeforces 374 C Inna and Dima (DFS)
  • 原文地址:https://www.cnblogs.com/mmclog/p/14167826.html
Copyright © 2011-2022 走看看