Test66800 2021-09-28 06:56 采纳率: 83.3%
浏览 60
已结题

python 接口如何上传bin文件?

上传TXT文件没有问题,上传bin文件就报错,应该是open时无法读取里面数据,所以传不到服务器,这个要怎么解决
files = {'data': open(file, 'rb')}

file = os.path.join(BASE_DIR, 'file', 'demo_app-1.2.157.bin')

result = requests.post(url=url, data=body, files=files, headers=headers)
这样bin文件无法读取,里面的二进制数据传不到服务端,txt文件就可以

  • 写回答

1条回答 默认 最新

  • 於黾 2021-09-28 08:00
    关注

    不管传txt还是bin,你需要按照二进制方式读取里面的字节流,而不是强制把里面的字符转成字符串
    所以什么类似readline之类的函数是绝对不可以用的,那只能用来读文本
    你在open的时候就必须指定参数为rb,b表示二进制
    必须调用read函数而不是readline

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月8日
  • 已采纳回答 9月30日
  • 修改了问题 9月28日
  • 创建了问题 9月28日