Python boto3 django transfer.upload_文件正在破坏图像,传输不完整
我使用boto3库将用户在我的web应用程序上上传的图像传输到S3 bucket,我使用transfer.upload_文件,但奇怪的是,图像的一部分在上传的文件中消失了,虽然文件在实例上看起来很完美,但不在S3 bucket中,任何帮助都会非常好Python boto3 django transfer.upload_文件正在破坏图像,传输不完整,python,django,file-upload,amazon-s3,boto3,Python,Django,File Upload,Amazon S3,Boto3,我使用boto3库将用户在我的web应用程序上上传的图像传输到S3 bucket,我使用transfer.upload_文件,但奇怪的是,图像的一部分在上传的文件中消失了,虽然文件在实例上看起来很完美,但不在S3 bucket中,任何帮助都会非常好 我正在通过以下方式将文件上载到本地服务器: fpath = settings.STATIC_ROOT + '/temp/' + self.fileObj.name filename, file_extension = os.path.splitext
我正在通过以下方式将文件上载到本地服务器:
fpath = settings.STATIC_ROOT + '/temp/' + self.fileObj.name
filename, file_extension = os.path.splitext(fpath) newName = Encrypt(str(int(time.time())) + filename).encrypt() + file_extension
destination = open(fpath, 'wb+')
for chunk in self.fileObj.chunks():
destination.write(chunk)
然后通过客户端连接到s3
boto3.client('s3',S3_REGION) transfer = S3Transfer(client)
transfer.upload_file( fpath, S3_STORAGE_BUCKET_NAME,self.folder+'/'+newName, extra_args={'ACL': 'public-read', 'ContentType':mime_type} )
你能提供更多的细节和一些代码吗?至少有一些想法是问题的原因是什么?我正在通过以下方式将文件上载到本地服务器:fpath=settings.STATIC_ROOT+'/temp/'+self.fileObj.name filename,file_extension=os.path.splitext(fpath)newName=Encrypt(str(int(time.time())+filename.Encrypt()+file_扩展名destination=open(fpath,'wb+'),用于self.fileObj.chunks()中的chunk:destination.write(chunk),然后通过client=boto3.client('s3',s3_区域)传输=S3Transfer(client)#transfer=boto3.s3.transfer(client)#将/tmp/myfile上载到s3://bucket/key transfer.Upload_文件(fpath,s3_存储_bucket_NAME,self.folder+'/'+newName,extra_args={'ACL':'public read','ContentType':mime_type})本地服务器上的文件似乎没问题。。但在s3上,图像是不完整的…只需编辑您的问题并将此代码发布在那里。它将更具可读性,其他人将能够通过它。你能提供更多的细节和一些代码吗?至少有一些想法是问题的原因是什么?我正在通过以下方式将文件上载到本地服务器:fpath=settings.STATIC_ROOT+'/temp/'+self.fileObj.name filename,file_extension=os.path.splitext(fpath)newName=Encrypt(str(int(time.time())+filename.Encrypt()+file_扩展名destination=open(fpath,'wb+'),用于self.fileObj.chunks()中的chunk:destination.write(chunk),然后通过client=boto3.client('s3',s3_区域)传输=S3Transfer(client)#transfer=boto3.s3.transfer(client)#将/tmp/myfile上载到s3://bucket/key transfer.Upload_文件(fpath,s3_存储_bucket_NAME,self.folder+'/'+newName,extra_args={'ACL':'public read','ContentType':mime_type})本地服务器上的文件似乎没问题。。但在s3上,图像是不完整的…只需编辑您的问题并将此代码发布在那里。它将更具可读性,其他人将能够通过它。