django 文件上传与转发
有这样一个需求,需要以http方式上传一张图片,先上传到一个中间服务器,然后再将这张图片上传到另一个服务器(目标服务器)上。中间可以根据实际需要存储图片。使用django框架和python 怎么实现?
我的目前的方式是这样的(部分代码):
def upload_img():
register_openers()
validate_data = self.generate_validate_data()
file_data = request.FILES.get('img')
post_data = {'img': file_data, 'dir': 'product'}
post_data.update(validate_data)
datagen, headers = multipart_encode(post_data)
new_request = urllib2.Request(self.img_upload_url, datagen, headers)
response = urllib2.urlopen(new_request)
对于图片数据部分,使用以下方式也不能上传成功:
file_data = request.FIELS.get('img').read()
另外,如果是另一种情况,需要将网络上的一张图片,而不是本地上传的图片传到目标服务器上,又该如何实现?
我使用urllib2.urlopen请求网络文件,获取数据后再上传也不能成功。
但如果对于一个已存在与中间服务器上的图片,使用下列方式可以上传成功
file_data = open('file_path', 'rb')
望有经验的大牛指点指点
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论