/// <summary> /// This method first adds and then checks the configuration for a /// static website in an Amazon S3 bucket. /// </summary> /// <param name="client">The Amazon S3 client used to add and then check the /// website configuration.</param> /// <param name="bucketName">The name of the bucket that will serve as /// a static website.</param> /// <param name="indexDocumentSuffix">The index document suffix for the /// website.</param> /// <param name="errorDocument">The name of the error document for the /// static website.</param> public static async Task AddWebsiteConfigurationAsync( IAmazonS3 client, string bucketName, string indexDocumentSuffix, string errorDocument) { try { // Put the website configuration. PutBucketWebsiteRequest putRequest = new PutBucketWebsiteRequest() { BucketName = bucketName, WebsiteConfiguration = new WebsiteConfiguration() { IndexDocumentSuffix = indexDocumentSuffix, ErrorDocument = errorDocument, }, }; PutBucketWebsiteResponse response = await client.PutBucketWebsiteAsync(putRequest); // Get the website configuration. GetBucketWebsiteRequest getRequest = new GetBucketWebsiteRequest() { BucketName = bucketName, }; GetBucketWebsiteResponse getResponse = await client.GetBucketWebsiteAsync(getRequest); Console.WriteLine($"Index document: {getResponse.WebsiteConfiguration.IndexDocumentSuffix}"); Console.WriteLine($"Error document: {getResponse.WebsiteConfiguration.ErrorDocument}"); } catch (AmazonS3Exception ex) { Console.WriteLine($"Error encountered on server. Message:'{ex.Message}' when writing an object."); } }
public async Task <GenericResponse> AddWebsiteConfigurationAsync(string bucketName, string indexDocumentSuffix, string errorDocument) { var result = new GenericResponse(); try { // 1. Put the website configuration. PutBucketWebsiteRequest putRequest = new PutBucketWebsiteRequest() { BucketName = bucketName, WebsiteConfiguration = new WebsiteConfiguration() { IndexDocumentSuffix = indexDocumentSuffix, ErrorDocument = errorDocument } }; PutBucketWebsiteResponse response = await _client.PutBucketWebsiteAsync(putRequest); // 2. Get the website configuration. GetBucketWebsiteRequest getRequest = new GetBucketWebsiteRequest() { BucketName = bucketName }; GetBucketWebsiteResponse getResponse = await _client.GetBucketWebsiteAsync(getRequest); Console.WriteLine("Index document: {0}", getResponse.WebsiteConfiguration.IndexDocumentSuffix); Console.WriteLine("Error document: {0}", getResponse.WebsiteConfiguration.ErrorDocument); result.Text = "SUCCESS"; result.Value = bucketName; result.Status = "OK"; } catch (AmazonS3Exception e) { result.Text = e.Message; result.Value = e.StackTrace; result.Status = "ERROR"; } catch (Exception e) { result.Text = e.Message; result.Value = e.StackTrace; result.Status = "ERROR"; } return(result); }
private static void GetBucketWebsite() { try { GetBucketWebsiteRequest request = new GetBucketWebsiteRequest() { BucketName = bucketName }; GetBucketWebsiteResponse response = client.GetBucketWebsite(request); Console.WriteLine("GetBucketWebsite response: {0}", response.StatusCode); Console.WriteLine("GetBucketWebsite website configuration error document: {0}", response.Configuration.ErrorDocument); Console.WriteLine("GetBucketWebsite website configuration index document: {0}", response.Configuration.ErrorDocument); } catch (ObsException ex) { Console.WriteLine("Exception errorcode: {0}, when get bucket website.", ex.ErrorCode); Console.WriteLine("Exception errormessage: {0}", ex.ErrorMessage); } }
static async Task AddWebsiteConfigurationAsync(string bucketName, string indexDocumentSuffix, string errorDocument) { try { // 1. Put the website configuration. PutBucketWebsiteRequest putRequest = new PutBucketWebsiteRequest() { BucketName = bucketName, WebsiteConfiguration = new WebsiteConfiguration() { IndexDocumentSuffix = indexDocumentSuffix, ErrorDocument = errorDocument } }; PutBucketWebsiteResponse response = await client.PutBucketWebsiteAsync(putRequest); // 2. Get the website configuration. GetBucketWebsiteRequest getRequest = new GetBucketWebsiteRequest() { BucketName = bucketName }; GetBucketWebsiteResponse getResponse = await client.GetBucketWebsiteAsync(getRequest); Console.WriteLine("Index document: {0}", getResponse.WebsiteConfiguration.IndexDocumentSuffix); Console.WriteLine("Error document: {0}", getResponse.WebsiteConfiguration.ErrorDocument); } catch (AmazonS3Exception e) { Console.WriteLine("Error encountered on server. Message:'{0}' when writing an object", e.Message); } catch (Exception e) { Console.WriteLine("Unknown encountered on server. Message:'{0}' when writing an object", e.Message); } }
public void TestBucketWebsite() { try { PutBucketWebsiteRequest putRequest = new PutBucketWebsiteRequest(bucket); putRequest.SetIndexDocument("index.html"); putRequest.SetErrorDocument("eroror.html"); putRequest.SetRedirectAllRequestTo("https"); var rule = new WebsiteConfiguration.RoutingRule(); rule.contidion = new WebsiteConfiguration.Contidion(); // HttpErrorCodeReturnedEquals 与 KeyPrefixEquals 必选其一 // 只支持配置4XX返回码,例如403或404 rule.contidion.httpErrorCodeReturnedEquals = 404; // rule.contidion.keyPrefixEquals = "test.html"; rule.redirect = new WebsiteConfiguration.Redirect(); rule.redirect.protocol = "https"; // ReplaceKeyWith 与 ReplaceKeyPrefixWith 必选其一 // rule.redirect.replaceKeyPrefixWith = "aaa"; rule.redirect.replaceKeyWith = "bbb"; putRequest.SetRoutingRules(new List <WebsiteConfiguration.RoutingRule>() { rule }); PutBucketWebsiteResult putResult = cosXml.PutBucketWebsite(putRequest); Assert.IsTrue(putResult.httpCode == 200); QCloudServer.TestWithServerFailTolerance(() => { GetBucketWebsiteRequest getRequest = new GetBucketWebsiteRequest(bucket); GetBucketWebsiteResult getResult = cosXml.GetBucketWebsite(getRequest); // Console.WriteLine(getResult.GetResultInfo()); Assert.IsNotEmpty((getResult.GetResultInfo())); WebsiteConfiguration configuration = getResult.websiteConfiguration; Assert.NotNull(configuration); Assert.NotNull(configuration.indexDocument); Assert.NotNull(configuration.indexDocument.suffix); Assert.NotNull(configuration.errorDocument); Assert.NotNull(configuration.redirectAllRequestTo); Assert.NotNull(configuration.redirectAllRequestTo.protocol); Assert.NotZero(configuration.routingRules.Count); Assert.NotNull(configuration.routingRules[0].contidion); Assert.NotNull(configuration.routingRules[0].contidion.httpErrorCodeReturnedEquals); // Assert.NotNull(configuration.routingRules[0].contidion.keyPrefixEquals); Assert.NotNull(configuration.routingRules[0].redirect); Assert.NotNull(configuration.routingRules[0].redirect.protocol); // Assert.NotNull(configuration.routingRules[0].redirect.replaceKeyPrefixWith); Assert.NotNull(configuration.routingRules[0].redirect.replaceKeyWith); DeleteBucketWebsiteRequest deleteRequest = new DeleteBucketWebsiteRequest(bucket); DeleteBucketWebsiteResult deleteResult = cosXml.DeleteBucketWebsite(deleteRequest); Assert.IsTrue(deleteResult.IsSuccessful()); } ); } catch (COSXML.CosException.CosClientException clientEx) { Console.WriteLine("CosClientException: " + clientEx.Message); Assert.Fail(); } catch (COSXML.CosException.CosServerException serverEx) { Console.WriteLine("CosServerException: " + serverEx.GetInfo()); Assert.Fail(); } }
public void GetBucketWebsiteAsync(GetBucketWebsiteRequest request, OnSuccessCallback <CosResult> successCallback, OnFailedCallback failCallback) { Schedue(request, new Model.Bucket.GetBucketWebsiteResult(), successCallback, failCallback); }
public GetBucketWebsiteResult GetBucketWebsite(GetBucketWebsiteRequest request) { return((Model.Bucket.GetBucketWebsiteResult)Excute(request, new Model.Bucket.GetBucketWebsiteResult())); }
public Task <GetBucketWebsiteResponse> GetBucketWebsiteAsync(GetBucketWebsiteRequest request, CancellationToken cancellationToken = default) { throw new NotImplementedException(); }
/// <summary> /// 获取桶的Website(托管)配置。 /// </summary> /// <param name="request">获取桶的Website(托管)配置的请求参数。</param> /// <returns>获取桶的Website(托管)配置响应结果。</returns> public GetBucketWebsiteResponse GetBucketWebsite(GetBucketWebsiteRequest request) { return(this.DoRequest <GetBucketWebsiteRequest, GetBucketWebsiteResponse>(request)); }
public GetBucketWebsiteResponse GetBucketWebsite(GetBucketWebsiteRequest request) { throw new NotImplementedException(); }
/// <summary> /// Start the asynchronous request for obtaining the website hosting configuration. /// </summary> /// <param name="request">Parameters in a request for obtaining bucket website hosting configuration</param> /// <param name="callback">Asynchronous request callback function</param> /// <param name="state">Asynchronous request status object</param> /// <returns>Response to the asynchronous request</returns> public IAsyncResult BeginGetBucketWebsite(GetBucketWebsiteRequest request, AsyncCallback callback, object state) { return(this.BeginDoRequest <GetBucketWebsiteRequest>(request, callback, state)); }
public void GetBucketWebsiteAsync(GetBucketWebsiteRequest request, AmazonServiceCallback <GetBucketWebsiteRequest, GetBucketWebsiteResponse> callback, AsyncOptions options = null) { throw new System.NotImplementedException(); }
private async Task <GetBucketWebsiteResponse> getBucketWebsite(AmazonS3Client client, GetBucketWebsiteRequest request) { GetBucketWebsiteResponse response = await client.GetBucketWebsiteAsync(request); return(response); }