PUT Bucket website
API Description
You can use this API to set website hosting for a bucket.
Method Definition
func (obsClient ObsClient) SetBucketWebsiteConfiguration(input *SetBucketWebsiteConfigurationInput) (output *BaseModel, err error)
Method Definition If a Signed URL Is Used
func (obsClient ObsClient) SetBucketWebsiteConfigurationWithSignedUrl(signedUrl string, actualSignedRequestHeaders http.Header, data io.Reader) (output *BaseModel, err error)
Request Parameter
| Field | Type | Optional or Mandatory |
|---|---|---|
| input | Mandatory |
Returned Result
| Field | Type |
|---|---|
| output | |
| err | error |
Sample Code
func main() {
input := &obs.SetBucketWebsiteConfigurationInput{}
input.Bucket = "bucketname"
input.IndexDocument.Suffix = "suffix"
input.ErrorDocument.Key = "key"
var routingRules [2]obs.RoutingRule
routingRule0 := obs.RoutingRule{}
routingRule0.Redirect.HostName = "www.a.com"
routingRule0.Redirect.Protocol = obs.ProtocolHttp
routingRule0.Redirect.ReplaceKeyPrefixWith = "prefix"
routingRule0.Redirect.HttpRedirectCode = "304"
routingRules[0] = routingRule0
routingRule1 := obs.RoutingRule{}
routingRule1.Redirect.HostName = "www.b.com"
routingRule1.Redirect.Protocol = obs.ProtocolHttps
routingRule1.Redirect.ReplaceKeyWith = "replaceKey"
routingRule1.Redirect.HttpRedirectCode = "304"
routingRule1.Condition.HttpErrorCodeReturnedEquals = "404"
routingRule1.Condition.KeyPrefixEquals = "prefix"
routingRules[1] = routingRule1
input.RoutingRules = routingRules[:]
output, err := obsClient.SetBucketWebsiteConfiguration(input)
if err == nil {
fmt.Printf("RequestId:%s\n", output.RequestId)
} else {
if obsError, ok := err.(obs.ObsError); ok {
fmt.Println(obsError.Code)
fmt.Println(obsError.Message)
} else {
fmt.Println(err)
}
}
} Last Article: DELETE Bucket lifecycle
Next Article: GET Bucket website
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.