Пример #1
0
        /// <summary>
        /// Call the B2 'Create Bucket' API (see https://www.backblaze.com/b2/docs/b2_create_bucket.html)
        /// </summary>
        /// <param name="apiUrl"></param>
        /// <param name="authorizationToken"></param>
        /// <param name="accountId"></param>
        /// <param name="bucketName"></param>
        /// <param name="bucketType"></param>
        /// <returns></returns>
        public async Task <CreateBucketResponse> CreateBucket(string apiUrl, string authorizationToken, string accountId, string bucketName, string bucketType)
        {
            Trace(() => $"CreateBucket: apiUrl={apiUrl}, authorizationToken={authorizationToken}, accountId={accountId}, bucketName={bucketName}, bucketType={bucketType}");

            var request = new HttpRequestMessage(HttpMethod.Post, $"{apiUrl}/b2api/v2/b2_create_bucket")
                          .WithAuthorization(authorizationToken)
                          .WithJsonSerializedContent(new CreateBucketRequest {
                accountId = accountId, bucketName = bucketName, bucketType = bucketType
            });

            var response = await httpClient.SendAsync(request).ConfigureAwait(false);

            var responseStream = await response.Content.ReadAsStreamAsync().ConfigureAwait(false);

            ThrowIfFailure(response, responseStream);

            var r = CreateBucketResponse.FromJson(responseStream);

            Trace(() => $"CreateBucket completed: accountId={r.accountId} bucketId={r.bucketId} bucketName={r.bucketName} bucketType={r.bucketType}");
            return(r);
        }
Пример #2
0
 public TestBucket()
 {
     authorizeAccountResponse = api.AuthorizeAccount(credentials.accountId, credentials.applicationKey).Result;
     createBucketResponse     = api.CreateBucket(authorizeAccountResponse.apiUrl, authorizeAccountResponse.authorizationToken, authorizeAccountResponse.accountId, RandomString.Next(16), "allPrivate").Result;
 }