python中sign函数图片_接口-签名Sign-Python写法

接口-签名Sign-Jmeter写法

实现目标

/v1/shippingtickets/inbound/departure 发货接口 POST请求

需要进行签名校验 【X-Sign】

Content-Type: application/json; charset=UTF-8

X-Timestamp: 1589297138920

X-Nonce: 93295642

X-Sign: 2a76a7d2ec34760afb7f4f3ff5a02ef3

X-Client-Id: KT071101

传参:{"ticketNo":"HCSP202005120006","trackingNumber":"SF1589297133080","chargerSerialNum":"SF1589297133080","shippingComment":"abc"}

sign是由【传参+时间戳+随机数+"cM5qa0Xv9G868G"】转成MD5码

实例

import time

import requests

import random

import hashlib

def type_delivery(self,shippingNo):

url = 'https://develop.preview.cn/smamo-home-charging-ticket/v1/shippingtickets/inbound/departure'

Timestamp = str(int(time.time() * 1000))

Nonce = str(random.randint(10000, 99999))

ClientId = "KT071101"

trackingNumber = "SF" + Timestamp

a = '{"ticketNo": "%s", "trackingNumber": "' % shippingNo

b = '%s", "chargerSerialNum": "' % trackingNumber

c = '%s", "shippingComment": "abc"}' % trackingNumber

d = '%scM5qa0Xv9G868G' % Nonce

src = a + b + c + Timestamp + d # 注意冒号:和逗号,后要留空格

# print(src)

m5 = hashlib.md5()

m5.update(src.encode("utf-8"))

Sign = str(m5.hexdigest())

# print(Sign)

header = {

"Content-Type": "application/json; charset=UTF-8", # application/json; charset=UTF-8

"X-Timestamp": Timestamp,

"X-Nonce": Nonce,

"X-Client-Id": ClientId,

"X-Sign": Sign

}

# print(header)

data = {"ticketNo": shippingNo, "trackingNumber": trackingNumber, "chargerSerialNum": trackingNumber, "shippingComment": "abc"}

result = requests.post(url, json=data, headers=header)

print(result.json())

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值