我正在尝试使用 Python 将文件上传到 Google 云存储 Bucket。之前工作正常,但突然返回错误。
这是我的代码:
来自views.py:
def perform_upload(video, thumbnail):
print('vdieo name is: {}'.format(video))
servise = discovery.build('storage', 'v1', credentials=credentials)
bucket_name = 'test_bucket004'
print('Uploading the video...')
media = MediaFileUpload(video, chunksize=4149304, mimetype='video/mp4',
resumable=True)
req = servise.objects().insert(
bucket=bucket_name,
name=str(video),
media_body=media,
body={"cacheControl": "public,max-age=31536000"},
predefinedAcl='publicRead'
)
resp = None
while resp is None:
status, resp = req.next_chunk()
print(resp)
这是它返回的内容:
BrokenPipeError: [Errno 32] Broken pipe
[22/Sep/2018 04:56:50] "POST /api/convert/ HTTP/1.1" 500 15981
和指向此行的回溯:
status, resp = req.next_chunk()
可能出了什么问题? 如何解决此“管道损坏”错误?
提前致谢!
最佳答案
当您的网络连接(以及与 GCS 的连接)由于某种原因不稳定时,就会发生这种情况。我建议在具有更稳定互联网连接的环境中重试此操作(从 WiFi 切换到有线连接、删除中间代理或防火墙等)。
关于Python 文件上传到 Google 云存储桶返回 Broken Pipe 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52453654/