# -*- coding: utf-8 -*- """Debug: same idempotency key, dump full upload response.""" import json, ssl, pathlib, hashlib, urllib.request, urllib.error BASE = "https://192.168.31.88:8042" CFG = pathlib.Path(r"C:\Users\admin\.zcode\cli\config.json") pat = json.loads(CFG.read_text(encoding="utf-8-sig"))["mcp"]["servers"]["sorb"]["env"]["SORB_PAT"] ctx = ssl._create_unverified_context() p = pathlib.Path(r"D:\腾讯\吕布\五维优化04-汉代城楼雪境俯瞰.png") data = p.read_bytes() intent = json.dumps({ "client_namespace": "lubu_pv_board", "idempotency_key": "upload_j8_citywall_20261029_v1", "project_id": 30, "name": "句8_城楼雪境俯瞰", "asset_type": "image", "mime_type": "image/png", "file_size": len(data), "sha256": hashlib.sha256(data).hexdigest(), }, separators=(",", ":")).encode("ascii", "backslashreplace") req = urllib.request.Request(BASE + "/api/external/v1/resources/upload", data=data, method="POST", headers={"Authorization": "Bearer " + pat, "Content-Type": "image/png", "X-Sorb-Upload-Intent": intent.decode("ascii")}) with urllib.request.urlopen(req, context=ctx, timeout=180) as r: print(r.read().decode("utf-8"))