python 上传文件到钉盘_python 上传文件

上周产品给我提了个需求,大体是做一个后台系统,管理游戏比赛落地页的数据更新,难点在于需要给CDN上传文件。现在把经验记录下来,下次有类似的需求能提高开发效率。

我使用的是网宿CDN,没有用网宿的SDK,直接python封装表单上传文件。

使用post 上传文件需要封装HTTP 消息头:

Content-Type:multipart/form-data; boundary= # boundary 是分隔符,表示使用作为body体分割符

Accept: */*

Content-Length: XXXX

--    #开始必须使用“--分隔符”作为body体的第一行,需要注意--一定不能丢

Content-Disposition: form-data; name="XXX"

/r/n         # 注意 name跟value之间一定要空一行

XXX_Value      # 表单XXX对应的Value值

Content-Dispositon: form-data; name='file'; filename='abc.png'

Content-Type: image/png

/r/n

“png的二进制数据”

---- #body体结束标记

/r/n

LIMIT = '----------lImIt_of_THE_fIle_eW_$'CRLF= '\r\n'L=[]for (key, value) infields:

L.append('--' +LIMIT)

L.append('Content-Disposition: form-data; name="%s"' %key)

L.append('')

L.append(value)for (key, filename, value) infiles:

L.append('--' +LIMIT)

L.append('Content-Disposition: form-data; name="%s"; filename="%s"' %(key, filename))

L.append('Content-Type: %s' %get_content_type(filename))

L.append('')

L.append(value)

L.append('--' + LIMIT + '--')

L.append('')

body= CRLF.join(L)


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部