有没有和明道云对接过的代码
import time
import hashlib
import hmac
from wsgiref.handlers import format_date_time
from time import mktime
输入参数
appkey = input["key"] secretKey = input["SecretKey"] body = input.get("body", "") # 确保body不是空字符串,如果为空则默认空字符串 encode = 'utf-8'
生成 RFC1123 时间格式的当前时间
now = time.gmtime() stamp = mktime(now) date = format_date_time(stamp)
生成 HTTP Body 的 MD5 值,十六进制小写格式
md5_hash = hashlib.md5() md5_hash.update(body.encode(encoding=encode)) content_md5 = md5_hash.hexdigest().lower()
固定的 Content-Type
content_type = "application/json"
生成 Authorization 字段
to_sign = secretKey + content_md5 + content_type + date signature = hmac.new(secretKey.encode(encode), to_sign.encode(encode), hashlib.sha1).hexdigest() authorization = f"WPS-2:{appkey}:{signature}"
时间戳和 token 的生成
timespan = str(int(time.time()))
token = appkey + timespan + secretKey
hl = hashlib.md5()
hl.update(token.encode(encoding=encode))
token = hl.hexdigest().upper()
输出结果
output = {
"timespan": timespan,
"token": token,
"Date": date,
"Content-Md5": content_md5,
"Content-Type": content_type,
"Authorization": authorization
}
输出校验
for key, value in output.items(): print(f"{key}\n文本\n{value}")
转MD5 这样转有问题吗 是文件地址转MD5 吗?
python代码可以参考这个回复:https://solution-community.wps.cn/questions/10010000000006576/10020000000006578
https://ddm.sxycpc.com:10066/file/mdoc/c4ff1e82-14de-4181-8736-60a885d86b9c/057fb5b0-1a4d-45aa-99c8-a2f6857d3f09/6625d9e8f02fc79e369dcb11/20240815/3gckfB2M5N5u7BbTfL7Y5scE3B5qcW51fUeL5d2Kcj6z90ej2yfK0n007C6n210y.docx?attname=%E4%B8%80%E4%BA%8B%E4%B8%80%E8%AE%AE.docx&e=1723707303&token=storage:gZCO4pQLicGKBCBE6fwkuyF2LH8=
是吧文档地址转为 MD5吗?