Python上传文件至ShareFile返回200但提示ERROR: REJECTED问题咨询
以下是几个直接的排查和修复方向:
补上未使用的ETag请求头:你的代码里接收了
etag参数但没加入请求头,Postman中很可能配置了这个字段。在上传请求的headers里添加:headers["ETag"] = etag改用PUT方法上传:部分对象存储的上传接口要求使用PUT而非POST,你可以尝试把上传请求的方法改成PUT:
response = requests.put(upload_url, headers=headers, data=file)对比Postman与Python的请求头差异:打印Python代码里的请求头,和Postman的请求头(剔除敏感信息)逐一比对,确认是否遗漏了关键头部字段。可以在代码中加入
print(headers)查看,或者开启requests的调试模式抓包。验证上传URL的有效性:获取
ChunkUri后先打印确认是有效地址,同时检查第一步POST请求的完整响应,看是否存在隐藏错误:print(response.json()) # 输出第一步请求的全部响应内容确认文件数据完整性:检查传入的
file字节流是否完整,比如和本地文件的MD5值对比,避免数据在传递过程中丢失或编码异常。
内容的提问来源于stack exchange,提问作者Alexey Yunoshev
相关产品推荐
相关产品推荐

