我有将文件写入s3的代码.代码工作正常
conn = S3Connection(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
bucket = conn.get_bucket(BUCKET, validate=False)
k = Key(bucket)
k.key = self.filekey
k.set_metadata('Content-Type', 'text/javascript')
k.set_contents_from_string(json.dumps(self.output))
k.set_acl(FILE_ACL)
Run Code Online (Sandbox Code Playgroud)
这工作得很好.然后我注意到我没有关闭我的连接,所以我在最后添加了这一行:
conn.close()
Run Code Online (Sandbox Code Playgroud)
现在,文件像以前一样写,但是,我现在在日志中看到了这个错误
S3Connection instance has no attribute '_cache', unable to write file
Run Code Online (Sandbox Code Playgroud)
有人看到我在这里做错了什么或知道是什么导致了这个?我注意到boto上没有任何教程显示人们关闭连接,但我知道你应该关闭你的IO操作连接作为一般规则......
编辑
关于此的注释,当我注释掉conn.close()错误消失时