使用来自C#的Json文件中的服务帐户的Google云存储桶

时间:2019-02-07 05:02:39

标签: c# json google-cloud-storage service-accounts

我是C#编码领域的新手,需要帮助才能使用C#的服务帐户Json文件连接到Google云端存储桶,同样需要一些指针。

1 个答案:

答案 0 :(得分:0)

首先,您需要创建一个服务帐户并创建JSON文件。

在GCP控制台中,转到“创建服务帐户密钥”页面。

转到创建服务帐户密钥页面 从“服务帐户”下拉列表中,选择“新服务帐户”。 在服务帐户名称字段中,输入名称。 从角色下拉列表中,选择项目>所有者。 单击创建。包含您的密钥的JSON文件下载到您的计算机。

然后为您的项目安装所需的插件。 如果您使用的是Visual Studio 2017或更高版本,请打开nuget包管理器窗口,然后键入以下内容:

Install-Package Google.Cloud.Storage.V1

如果您使用.NET Core命令行界面工具来安装依赖项,请运行以下命令:

dotnet add package Google.Cloud.Storage.V1

然后将JSON文件添加到您的路径,并将GOOGLE_APPLICATION_CREDENTIALS环境变量设置为引用JSON文件,以便StorageClient可以找到它。

对于应用程序部分,这是一个示例:

using Google.Cloud.Storage.V1;
using System;
using System.Diagnostics;

namespace GoogleCloudSamples
{
    class StorageQuickstart
    {
        static void Main(string[] args)
        {
            // Your Google Cloud Platform project ID.
            string projectId = "YOUR-PROJECT-ID";


            // Instantiates a client.
            StorageClient storageClient = StorageClient.Create();

            // The name for the new bucket.
            string bucketName = projectId + "-test-bucket";
            try
            {
                // Creates the new bucket.
                storageClient.CreateBucket(projectId, bucketName);
                Console.WriteLine($"Bucket {bucketName} created.");
            }
            catch (Google.GoogleApiException e)
            when (e.Error.Code == 409)
            {
                // The bucket already exists.  That's fine.
                Console.WriteLine(e.Error.Message);
            }
        }
    }
}