如何使用GoogleServiceAuthentication类将文件上传到Grails中的google存储?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用GoogleServiceAuthentication类将文件上传到Grails中的google存储?相关的知识,希望对你有一定的参考价值。

我正在创建一个应用程序,我需要将Excel文件上传到Google Storage。

有人可以告诉我如何使用Google服务身份验证在Google Storage中上传文件吗?

我试图通过使用动作excelFile上传FileUploadController中的uploadExcelFile

码:

def uploadExcelFile(){

    def excelFile = request.getFile('excelFile')

    // UPLOAD HERE 

    redirect(action: "index")
}
答案

您需要在IAM下设置服务帐户,并授予您对存储桶的帐户访问权限。创建帐户后,您可以下载json格式的私钥。然后,您可以在代码中使用该密钥:

StorageOptions options = StorageOptions.newBuilder()
    .setCredentials(GoogleCredentials.fromStream(new ByteArrayInputStream("YOUR KEY FROM JSON FILE".getBytes())))
    .build();

Storage storage = options.getService();

获得存储对象后,您可以检索存储桶并将文件上载到存储对象:

Bucket bucket = storage.get("your-bucket-name")

try {
    bucket.create("name of file", excelFile.inputStream)
}
catch (Exception e) {//do something}

以上是关于如何使用GoogleServiceAuthentication类将文件上传到Grails中的google存储?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用本机反应创建登录以及如何验证会话

如何在自动布局中使用约束标识符以及如何使用标识符更改约束? [迅速]

如何使用 AngularJS 的 ng-model 创建一个数组以及如何使用 jquery 提交?

如何使用laravel保存所有行数据每个行名或相等

如何使用 Math.Net 连接矩阵。如何使用 Math.Net 调用特定的行或列?

WSARecv 如何使用 lpOverlapped?如何手动发出事件信号?