'''

以下Python Code运行环境为windows10,

  Python版本为3.5.3

  涉及的库:base64,json,unittest

'''

# coding=utf-8
# import requests
# import hashlib
import base64, json
import unittest
 
 
class DemoRequests(unittest.TestCase):
def setUp(self):
#self._url = 'http://www.baidu.com'
self.json_ = {
"username": "001",
"password": "001",
"uuid": "F9E73F13915A6283F4D9916C36E6D867"
}
 
def tearDown(self):
print("Request_test_End...")
 
# 加密json_字符串
def test_request_json_encryption(self):
# 把dict类型的json_转换成bytes字节流的str类型的json_
json_encryption = base64.b64encode(json.dumps(self.json_).encode('utf-8'))
print(json_encryption)
return json_encryption
 
# 解密json_字符串
def test_request_json_Decrypt(self):
# --------------------------------------------------------------------------------------------------------
json_encryption = self.test_request_json_encryption()
# 把bytes字节流的str类型的json进行解密 decode(默认为utf-8)
# b'{"password": "001", "username": "001", "uuid": "F9E73F13915A6283F4D9916C36E6D867"}'
json_decrypt = base64.b64decode(json_encryption.decode('utf-8'))
print(json_decrypt)
# --------------------------------------------------------------------------------------------------------
# 把解密后的bytes类型数据转换成str类型数据
# {"uuid": "F9E73F13915A6283F4D9916C36E6D867", "password": "001", "username": "001"}
json_encryption_str = json_decrypt.decode()
print(json_encryption_str)
 
# -------------------------------------------------------------------------------------------------------
# 得到str类型数据后,要转换成dict类型,才能取出某个key的values
json_encryption_dict = json.loads(json_encryption_str)
print(type(json_encryption_dict))
 
# -------------------------------------------------------------------------------------------------------
# 比如要取出"uuid"的value
json_encryption_dict_uuid = json_encryption_dict["uuid"]
print(json_encryption_dict_uuid)
 
 
if __name__ == '__main__':
unittest.main()
 

关于Python实现Interface base64加解密方法的更多相关文章

  1. C# SHA512和Base64加解密方法

    /// <summary> /// Get SHA512 Hash From String /// </summary> /// <param name="or ...

  2. PHP 加解密方法大全

    最近看见一篇文章讲的是PHP的加解密方法,正好也自己学习下,顺便以后有用到的地方也好能快速用上,仅供自己学习和复习,好了不多BB,上代码. 基于这几个函数可逆转的加密为:base64_encode() ...

  3. java base64加解密

    接上篇java Base64算法. 根据之前过程使用base64加解密,所以写成了工具类. 代码示例; public class Base64Util { private static Logger ...

  4. QuickBase64 - Android 下拉通知栏快捷base64加解密工具

    Android Quick Setting Tile Base64 Encode/Decode Tool Android 下拉通知栏快捷 base64 加解密,自动将剪切板的内容进行 base64 E ...

  5. DES跨(C# Android IOS)三个平台通用的加解密方法

          #region   跨平台加解密(c# 安卓 IOS)       //  public static string sKey = "12345678";       ...

  6. Java Des加解密方法(c#加密Java解密)

    最近我们用Java把一个用.net编写的老系统重新做了翻版,但是登录还是用.net的登录.这样就会遇到一个比较棘手的问题,我们登录用的cookie信息都是.net用des加密的,但我们不得不用Java ...

  7. JAVA加解密 -- Base64加解密

    Base64算法实现:可以将任意的字节数组数据,通过算法,生成只有(大小写英文.数字.+./)(一共64个字符)内容表示的字符串数据. private static final String str ...

  8. base64加解密字符串

    import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOExceptio ...

  9. python中的base64加密解密

    介绍 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法.可查看RFC2045-RFC2049,上面有MIME的详细规范. ...

随机推荐

  1. SGU 176 (有源汇最小流)

    转载:http://blog.csdn.net/dan__ge/article/details/51207951 题意:n个节点,m条路径,接下来m行a,b,c,d,如果d等于1,则a到b的流量必须为 ...

  2. k-近邻算法(kNN)测试算法:作为完整程序验证分类器

    #测试算法:作为完整程序验证分类器 def datingClassTest(): hoRatio = 0.10 #设置测试集比重,前10%作为测试集,后90%作为训练集 datingDataMat,d ...

  3. 【CF1210C】Kamil and Making a Stream(vector,数论,树)

    题意:给定一棵n个点带点权的树,i号点的点定义f(i,j)为i到j路径上所有点的gcd,其中i是j的一个祖先,求所有f(i,j)之和mod1e9+7 2<=n<=1e5,0<=a[i ...

  4. Flutter样式和布局控件简析(二)

    开始 继续接着分析Flutter相关的样式和布局控件,但是这次内容难度感觉比较高,怕有分析不到位的地方,所以这次仅仅当做一个参考,大家最好可以自己阅读一下代码,应该会有更深的体会. Sliver布局 ...

  5. vim如何达到高效

    参考:http://blog.jobbole.com/44891/ 搜索技巧 1. 使用*快速查询当前光标所在的单词 然后使用n快速找到下一个查询结果: 使用N快速找到上一个查询结果 2. 在.vim ...

  6. js中的经典案例--简易万年历

    js中的经典案例--简易万年历 html代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8& ...

  7. Centos7安装gearman和php扩展

    Centos7安装gearman和php扩展 标签(空格分隔): php,linux gearman所需要的依赖 yum install \ vim \ git \ gcc \ gcc-c++ \ w ...

  8. c#生成html静态文件时出现空白行,怎么去掉utf-8中的bom

    public static void UTF8RemoveBOM(string filepath) { UTF8RemoveBOM(filepath, filepath); }   public st ...

  9. 转 lsof命令详解

    lsof命令详解   lsof (list open files)是一个列出当前系统打开文件的工具.在linux系统环境下,任何事物都可以以文件形式存在,通过文件不仅可以访问常规的数据,还可以访问网络 ...

  10. input只读效果

    有两种方式可以实现input的只读效果:disabled 和 readonly. 自然两种出来的效果都是只能读取不能编辑,可是两者有很大不同. Disabled说明该input无效,及其value不会 ...