我尝试使用以下代码(已总结)上载文件。
在服务器端,当我检查接收到的文件的名称时,我看到它已设置为file_path参数。
目前,发布者库采用我输入的file_path参数(例如:file_path =〜/ user / data.csv),并在文件分段上传期间将其作为文件名发送。
我正在寻找一种方法来更改正在发送的文件名(因为服务器希望文件名不带/ char)
提前感谢。
P.S。我已经尝试将“名称”键添加到值中,但没有帮助。
values = {'file': open(file_path, 'rb')}
poster.streaminghttp.register_openers()
datagen, headers = poster.encode.multipart_encode(values)
# Create the Request object
request = urllib2.Request(address, datagen, headers)
我设法使用以下代码解决了这个问题:
f = open(file_path, constants.READ_FILE_BINARY_MODE)
mp = MultipartParam("file", fileobj=f, filename="file.csv")
values = {"file": mp,
constants.AUTHORIZATION_HEADER_KEY: constants.AUTHORIZATION_HEADER_VALUE % self.__token,
constants.CACHE_CONTROL_HEADER_KEY: constants.CACHE_CONTROL_NEGATIVE_VALUE
}
poster.streaminghttp.register_openers()
datagen, headers = poster.encode.multipart_encode(values)
# Create the Request object
request = urllib2.Request(address, datagen, headers)