TCP调试工具如下:使用16进制发送和接受数据
TCP调试:16进制发送
第一步:将发生的字符串进行base64编码 第二步:base6编码字符串转16进制 第三步:16进制按字节加空格
import base64
strInput=input("请输入格式的json字符串:")
bs=str(base64.b64encode(strInput.encode('utf-8')),"utf-8")
print('base64转码:'+bs)
by = bytes(bs,'UTF-8')
hexstring = by.hex()
print(hexstring)
str_1=""
for i in range(0,len(hexstring),2):
str_1+=hexstring[i]+hexstring[i+1]+" "
print(str_1)
print("data size:%x" %len(bs))
运行结果:
运行结果: 请输入格式的json字符串:{"indexId": "1111111111111111111", ?? ?"clientType": 1 } base64转码:eyJpbmRleElkIjogIjExMTExMTExMTExMTExMTExMTEiLCAJImNsaWVudFR5cGUiOiAxIH0= 65794a70626d526c65456c6b496a6f67496a45784d5445784d5445784d5445784d5445784d5445784d5445694c43414a496d4e736157567564465235634755694f6941784948303d 65 79 4a 70 62 6d 52 6c 65 45 6c 6b 49 6a 6f 67 49 6a 45 78 4d 54 45 78 4d 54 45 78 4d 54 45 78 4d 54 45 78 4d 54 45 78 4d 54 45 69 4c 43 41 4a 49 6d 4e 73 61 57 56 75 64 46 52 35 63 47 55 69 4f 69 41 78 49 48 30 3d? data size:48
TCP调试:16进制数据解析
第一步:16进制字符串去除空格 第二步:将16进制字符串转为文本字符串 第三步:将文本字符串base64解码
import base64
hexstring=input("请输入16进制字符串:")
print(hexstring.strip())
byte_arr = bytes.fromhex(hexstring)
byte_arr.hex()
print('解码\n'+str(base64.b64decode(byte_arr),"utf-8"))
运行结果:
请输入16进制字符串:65 77 6f 4a 49 6d 52 68 64 47 45 69 4f 67 6c 37 43 67 6b 4a 49 6e 56 7a 5a 58 4a 4a 5a 43 49 36 43 54 4d 4b 43 58 30 73 43 67 6b 69 5a 58 4a 79 62 33 4a 44 62 32 52 6c 49 6a 6f 4a 4d 41 70 39? 65 77 6f 4a 49 6d 52 68 64 47 45 69 4f 67 6c 37 43 67 6b 4a 49 6e 56 7a 5a 58 4a 4a 5a 43 49 36 43 54 4d 4b 43 58 30 73 43 67 6b 69 5a 58 4a 79 62 33 4a 44 62 32 52 6c 49 6a 6f 4a 4d 41 70 39 解码 { ?? ?"data":?? ?{ ?? ??? ?"userId":?? ?3 ?? ?}, ?? ?"errorCode":?? ?0 }
|