Python 我如何判断boto手术是否成功?

Python 我如何判断boto手术是否成功?,python,networking,amazon-s3,network-programming,boto,Python,Networking,Amazon S3,Network Programming,Boto,我正在和波托一起做童话般的上传 for path, dirs, files in os.walk("data"): for file in files: k = Key(bucket) k.key = file k.set_contents_from_filename(os.path.join(path,file)) 但是从文件名设置内容不会返回任何内容。我如何判断手术成功与否?如果RIAKC很重要的话,我会使用它作为后端。因为boto发

我正在和波托一起做童话般的上传

for path, dirs, files in os.walk("data"):
    for file in files:
        k = Key(bucket)
        k.key = file
        k.set_contents_from_filename(os.path.join(path,file))

但是从文件名设置内容不会返回任何内容。我如何判断手术成功与否?如果RIAKC很重要的话,我会使用它作为后端。

因为boto发出的所有底层服务请求都是基于HTTP的,所以boto会监视状态代码,如果HTTP状态代码没有表示成功,则会引发Python异常。因此,如果它没有引发异常,它应该是成功的。

在这个过程中是否进行了某种完整性检查?据我所知,HTTP不进行完整性检查(如果我错了,请纠正我),这取决于应用程序的用户/开发人员。在S3的
set\u contents\u操作中,boto在发送文件之前计算MD5校验和。然后,它将该校验和作为上传的一部分发送,以便S3可以在服务器端对其进行验证。它还将计算出的MD5与返回的ETag头进行比较,对于单部件文件,ETag头始终是MD5。