POST文本请求示例

最近更新时间: 2022-10-31 18:51:54

-- coding: utf-8 -- import base64
import hashlib
import hmac
import time
import requests

secret_id = " AKIDmDJ4SUPSOz****" secret_key = " G9gAI3SUATQ0n ****"

def get_string_to_sign(method, endpoint, params):
s = method + endpoint + "/?"
query_str = "&".join("%s=%s" % (k, params[k]) for k in sorted(params))
return s + query_str

def sign_str(key, s, method):
hmac_str = hmac.new(key.encode("utf8"), s.encode("utf8"), method).digest()
return base64.b64encode(hmac_str)

if name == 'main':
endpoint = "contentsecurity.api3.yun.ccb.com"
data = {
'Action' : 'BspTextRecognition',
'Nonce' : 11886,
'MessageContent' : "测试信息",
'Region' : 'wh',
'SecretId' : secret_id,
'Timestamp' : int(time.time()), # int(time.time())
'Version': '2019-03-05'
} s = get_string_to_sign("POST", endpoint, data)
data["Signature"] = sign_str(secret_key, s, hashlib.sha1)
print(data["Signature"])
# 此处会实际调用
resp = requests.post("https://" + endpoint, data=data)

print(resp.url)
print(resp.text)

返回结果如下