首页 > 解决方案 > 有没有办法使用谷歌云客户端库将文件从 FTP 上传到 GCS?

问题描述

我是 GCP 及其客户端库的新手。我无法使用 C++ Google 云客户端库从 FTP 服务器将文件上传到谷歌云存储桶。当我尝试将文件“storage_object_file_transfer_samples.cc”(在 google-cloud-cpp 中提供,该文件的链接在此处)作为可执行文件运行时,它引发了错误。错误是“引发标准异常:无法打开上传文件源”。GCP 是否支持与外部 FTP 服务器的连接?如果它确实支持连接,我们如何使用 C++ 客户端库将文件从 FTP 服务器上传到 GCS?

标签: c++ftpgoogle-cloud-storagegoogle-cloud-cpp

解决方案


GCP 是否支持与外部 FTP 服务器的连接?

这在文档中进行了解释,Client::UploadFile仅支持常规文件系统文件:

UploadFile()

将文件上传到对象。

注意:仅支持常规文件。如果您需要上传读取设备、命名管道、FIFO 或其他非常规文件类型的文件系统对象的结果,那么WriteObject()可能是更好的选择。

所以没有FTP。

使用第三方库,例如libcurl从 FTP 下载并将client.WriteObject()其流式传输到 GCP。


推荐阅读