tencent cloud

masukan

Static Website

Terakhir diperbarui:2023-02-08 14:40:10

    Feature Overview

    This document provides an overview of APIs and SDK code samples for static website.

    API Operation Description
    PUT Bucket website Configuring a static website configuration Configures a static website for a bucket
    GET Bucket website Querying a static website configuration Queries the static website configuration of a bucket
    DELETE Bucket website Deleting a static website configuration Deletes the static website configuration of a bucket

    Setting Static Website Configuration

    Feature description

    This API is used to configure a static website for a bucket.

    Method prototype

    func (s *BucketService) PutWebsite(ctx context.Context, opt *BucketPutWebsiteOptions) (*Response, error)
    

    Sample request

    package main
    import (
       "context"
       "github.com/tencentyun/cos-go-sdk-v5"
       "net/http"
       "net/url"
       "os"
    )
    func main(){
       // Bucket name in the format of `BucketName-APPID` (`APPID` is required), which can be viewed in the COS console at https://console.tencentcloud.com/cos5/bucket.
       // Replace it with your region, which can be viewed in the COS console at https://console.tencentcloud.com/. For more information about regions, visit https://www.tencentcloud.com/document/product/436/6224.
       u, _ := url.Parse("https://examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com")
       b := &cos.BaseURL{BucketURL: u}
       client := cos.NewClient(b, &http.Client{
           Transport: &cos.AuthorizationTransport{
               // Get the key from environment variables
               // Environment variable `SECRETID` refers to the user's `SecretId`, which can be viewed in the CAM console at https://console.tencentcloud.com/cam/capi.
               SecretID: os.Getenv("SECRETID"),  // User `SecretId`. We recommend you use a sub-account key and follow the principle of least privilege to reduce risks. For information about how to obtain a sub-account key, visit https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1.
               // Environment variable `SECRETKEY` refers to the user's `SecretKey`, which can be viewed in the CAM console at https://console.tencentcloud.com/cam/capi.
               SecretKey: os.Getenv("SECRETKEY"),  // User `SecretKey`. We recommend you use a sub-account key and follow the principle of least privilege to reduce risks. For information about how to obtain a sub-account key, visit  https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1.
           },
       })
       opt := &cos.BucketPutWebsiteOptions{
           Index: "index.html",
           Error: &cos.ErrorDocument{"index_backup.html"},
           RoutingRules: &cos.WebsiteRoutingRules{
               []cos.WebsiteRoutingRule{
                   {
                       ConditionErrorCode: "404",
                       RedirectProtocol:   "https",
                       RedirectReplaceKey: "404.html",
                   },
                   {
                       ConditionPrefix:          "docs/",
                       RedirectProtocol:         "https",
                       RedirectReplaceKeyPrefix: "documents/",
                   },
               },
           },
       }
       _, err := client.Bucket.PutWebsite(context.Background(), opt)
       if err != nil{
           // ERROR
       }
    }
    

    Field description

    type WebsiteRoutingRule struct {
      ConditionErrorCode string 
      ConditionPrefix    string 
       RedirectProtocol         string 
      RedirectReplaceKey       string 
      RedirectReplaceKeyPrefix string 
    }
    type WebsiteRoutingRules struct {
      Rules []WebsiteRoutingRule
    }
    type ErrorDocument struct {
      Key string 
    }
    type RedirectRequestsProtocol struct {
      Protocol string 
    }
    type BucketPutWebsiteOptions struct {
      XMLName          xml.Name                  
      Index            string                    
      RedirectProtocol *RedirectRequestsProtocol
      Error            *ErrorDocument            
      RoutingRules     *WebsiteRoutingRules
    }
    
    Parameter Description Type
    BucketPutWebsiteOptions Static website configuration parameters Struct
    Index Index document String
    RedirectProtocol Site-wide redirect protocol Struct
    Protocol Site-wide redirect protocol. Only HTTPS is supported. String
    Error Error document Struct
    Key Common error response String
    RoutingRules Multiple redirect rules. Up to 100 redirect rules can be set. Struct
    ConditionErrorCode Redirect error code. Only 4xx status codes are supported. This has a higher priority than Error.Key. String
    ConditionPrefix Redirect path prefix to replace with the specified "folder/" for the redirect. String
    RedirectProtocol Redirect protocol. Only HTTPS is supported. String
    RedirectReplaceKey Content that is used to replace the entire key. String
    RedirectReplaceKeyPrefix Content that is used to replace the key prefix. The replacement is allowed only when Condition is KeyPrefixEquals. String

    Querying Static Website Configuration

    Feature description

    This API (GET Bucket website) is used to query the static website configuration associated with a bucket.

    Method prototype

    func (s *BucketService) GetWebsite(ctx context.Context) (*BucketGetWebsiteResult, *Response, error)
    

    Sample request

    package main
    import (
       "context"
       "fmt"
       "github.com/tencentyun/cos-go-sdk-v5"
       "net/http"
       "net/url"
       "os"
    )
    func main(){
       // Bucket name in the format of `BucketName-APPID` (`APPID` is required), which can be viewed in the COS console at https://console.tencentcloud.com/cos5/bucket.
       // Replace it with your region, which can be viewed in the COS console at https://console.tencentcloud.com/. For more information about regions, visit https://www.tencentcloud.com/document/product/436/6224.
       u, _ := url.Parse("https://examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com")
       b := &cos.BaseURL{BucketURL: u}
       client := cos.NewClient(b, &http.Client{
           Transport: &cos.AuthorizationTransport{
               // Get the key from environment variables
               // Environment variable `SECRETID` refers to the user's `SecretId`, which can be viewed in the CAM console at https://console.tencentcloud.com/cam/capi.
               SecretID: os.Getenv("SECRETID"),  // User `SecretId`. We recommend you use a sub-account key and follow the principle of least privilege to reduce risks. For information about how to obtain a sub-account key, visit https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1.
               // Environment variable `SECRETKEY` refers to the user's `SecretKey`, which can be viewed in the CAM console at https://console.tencentcloud.com/cam/capi.
               SecretKey: os.Getenv("SECRETKEY"),  // User `SecretKey`. We recommend you use a sub-account key and follow the principle of least privilege to reduce risks. For information about how to obtain a sub-account key, visit  https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1.
           },
       })
       res, _, err := client.Bucket.GetWebsite(context.Background())
       if err != nil{
           // ERROR
       }
       fmt.Println(res)
    }
    

    Response description

    type BucketGetWebsiteResult BucketPutWebsiteOptions
    
    Parameter Description Type
    BucketGetWebsiteResult Static website configuration parameters Struct
    Index Index document String
    RedirectProtocol Site-wide redirect protocol Struct
    Protocol Site-wide redirect protocol. Only HTTPS is supported. String
    Error Common error response Struct
    Key Common error response String
    RoutingRules Multiple redirect rules. Up to 100 redirect rules can be set. Struct
    ConditionErrorCode Redirect error code. Only 4xx status codes are supported. This has a higher priority than Error.Key. String
    ConditionPrefix Redirect path prefix to replace with the specified "folder/" for the redirect. String
    RedirectProtocol Redirect protocol. Only HTTPS is supported. String
    RedirectReplaceKey Content that is used to replace the entire key. String
    RedirectReplaceKeyPrefix Content that is used to replace the key prefix. The replacement is allowed only when Condition is KeyPrefixEquals. String

    Deleting Static Website Configuration

    Feature description

    This API (DELETE Bucket website) is used to delete the static website configuration of a bucket.

    Method prototype

    func (s *BucketService) DeleteWebsite(ctx context.Context) (*Response, error)
    

    Sample request

    package main
    import (
       "context"
       "github.com/tencentyun/cos-go-sdk-v5"
       "net/http"
       "net/url"
       "os"
    )
    func main(){
       // Bucket name in the format of `BucketName-APPID` (`APPID` is required), which can be viewed in the COS console at https://console.tencentcloud.com/cos5/bucket.
       // Replace it with your region, which can be viewed in the COS console at https://console.tencentcloud.com/. For more information about regions, visit https://www.tencentcloud.com/document/product/436/6224.
       u, _ := url.Parse("https://examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com")
       b := &cos.BaseURL{BucketURL: u}
       client := cos.NewClient(b, &http.Client{
           Transport: &cos.AuthorizationTransport{
               // Get the key from environment variables
               // Environment variable `SECRETID` refers to the user's `SecretId`, which can be viewed in the CAM console at https://console.tencentcloud.com/cam/capi.
               SecretID: os.Getenv("SECRETID"),  // User `SecretId`. We recommend you use a sub-account key and follow the principle of least privilege to reduce risks. For information about how to obtain a sub-account key, visit https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1.
               // Environment variable `SECRETKEY` refers to the user's `SecretKey`, which can be viewed in the CAM console at https://console.tencentcloud.com/cam/capi.
               SecretKey: os.Getenv("SECRETKEY"),  // User `SecretKey`. We recommend you use a sub-account key and follow the principle of least privilege to reduce risks. For information about how to obtain a sub-account key, visit  https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1.
           },
       })
       _, err := client.Bucket.DeleteWebsite(context.Background())
       if err != nil{
           // ERROR
       }
    }
    
    Hubungi Kami

    Hubungi tim penjualan atau penasihat bisnis kami untuk membantu bisnis Anda.

    Dukungan Teknis

    Buka tiket jika Anda mencari bantuan lebih lanjut. Tiket kami tersedia 7x24.

    Dukungan Telepon 7x24