快速版:你的“形式”参数名称使用标准的multipart / form-data编码需要被送到编码?
更长的版本:在上传表单1fichier.com (上传大文件服务)使用下列指定文件参数上传:
<input type="file" name="file[]" size="50" title="Select the files to upload" />
参数的名称是文件[](注意括号)。
使用的LiveHTTPHeaders我看到参数类似这样的发送(即括号内)提交了Firefox中的表单时。 然而,对于一个节目 ,我用Python写的,我现在用的海报模块可以上传使用标准的multipart / form-data编码文件。 如果我用括号中输入参数的名称,它就会发出这样的:
file%5B%5D
在内部,海报编码使用此函数的参数的名称:
def encode_and_quote(data):
"""If ``data`` is unicode, return urllib.quote_plus(data.encode("utf-8"))
otherwise return urllib.quote_plus(data)"""
if data is None:
return None
if isinstance(data, unicode):
data = data.encode("utf-8")
return urllib.quote_plus(data)
该urllib.quote_plus文档中说,这只是“需要建立一个查询字符串进入一个URL时,引用HTML表单值”。 但在这里我们做一个POST,所以表单值不会在url中去。
那么,他们仍然需要进行编码,或者是海报的错误要这么做?