'''

以下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. altium designer设置不会产生.pcbpreview、.schpreview等的垃圾文件

    使用altium的是时候发现只要打开pcb或者原理图的时候就会生成一些垃圾文件,删除后再次打开还是会自动生成这些东西,对于我这样有些许洁癖的人没很是难以忍受的.那么怎么把它删除呢.其实通过字面的意思就 ...

  2. spring boot 热部署devtools实现(成功,主要是添加依赖后配置setting)

    1.devtools spring为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Spring Boot ...

  3. SSH框架整合-myeclipse

    项目结构   1.mysql数据库 stuinfo /* SQLyog 企业版 - MySQL GUI v8.14 MySQL - 5.5.40 : Database - stuinfo ****** ...

  4. ECS运维:操作系统有异常?诊断日志来帮忙!

    ​云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新.阿里云使用严格的IDC标准.服务器准入标准 ...

  5. ceph优化记录 ceph.conf优化详解

    https://cloud.tencent.com/developer/article/1173069 记录一下一些ceph优化的设置,部分内容来自网络,有些请根据自己需求相应修改 1.  Kerne ...

  6. 安装ThinkPHP

    ThinkPHP5的环境要求如下: PHP >= 5.4.0 PDO PHP Extension MBstring PHP Extension CURL PHP Extension 严格来说,T ...

  7. Docker(应用服务引擎)

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...

  8. SPOJ - FTOUR2 (点分治+树状数组)

    题目:https://vjudge.net/contest/307753#problem/I 题意:有一颗树,上面有白色黑色点,每个点上有一个权值,权值可以为负,现在我要求一条路径,权值和最大,这条路 ...

  9. codeforces 111A/112C Petya and Inequiations

    题目:Petya and Inequiations传送门: http://codeforces.com/problemset/problem/111/A http://codeforces.com/p ...

  10. Linux系统结构 详解

    Linux系统一般有4个主要部分: 内核.shell.文件系统和应用程序.内核.shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序.管理文件并使用系统.部分层次结构如图1-1所 ...