2019年12月

还是那个OneDrive的网盘项目,还是在文件上传这块墨迹。
小文件上传已经实现了,现在就差大文件上传,这里涉及到了文件分片。
搜了一圈基本都是说前端分片后传到后端由Python去处理,那不就是JS的分片么?
那求人不如求己。

- 阅读剩余部分 -

最近在尝试使用Python的Django框架写一个类似OneIndex的项目练练手,功能基本都已经实现了,现在就差文件上传那块。
上传时先是写了一个小文件上传的demo,用的requests库,大文件打算使用aiohttp。

遇到的问题

文件上传之后,在OneDrive无法预览,下载后也出现视频文件无法解码,图片文件无法打开的情况。
但若使用Postman把文件放在body以binary的形式上传到OneDrive的话确没问题。

上传前后对比(文本打开).png
挑了一个视频文件,将上传前后的文件用文本形式打开查看会发现在开始和结束分别多了段字符串:

--ebffcc0c9b8816735607b6faa2c09076
Content-Disposition: form-data; name="file"; filename="text.txt"
......
......
--ebffcc0c9b8816735607b6faa2c09076--

- 阅读剩余部分 -