Configuring CORS Rules for a Bucket
API Description
You can use this API to set CORS rules for a bucket to allow client browsers to send cross-origin requests.
Method Definition
func (obsClient ObsClient) SetBucketCors(input *SetBucketCorsInput) (output *BaseModel, err error)
Method Definition If a Signed URL Is Used
func (obsClient ObsClient) SetBucketCorsWithSignedUrl(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.SetBucketCorsInput{} input.Bucket = "bucketname" var corsRules [2]obs.CorsRule corsRule0 := obs.CorsRule{} corsRule0.ID = "rule1" corsRule0.AllowedOrigin = []string{"http://www.a.com", "http://www.b.com"} corsRule0.AllowedMethod = []string{"GET", "PUT", "POST", "HEAD"} corsRule0.AllowedHeader = []string{"header1", "header2"} corsRule0.MaxAgeSeconds = 100 corsRule0.ExposeHeader = []string{"obs-1", "obs-2"} corsRules[0] = corsRule0 corsRule1 := obs.CorsRule{} corsRule1.ID = "rule2" corsRule1.AllowedOrigin = []string{"http://www.c.com", "http://www.d.com"} corsRule1.AllowedMethod = []string{"GET", "PUT", "POST", "HEAD"} corsRule1.AllowedHeader = []string{"header3", "header4"} corsRule1.MaxAgeSeconds = 50 corsRule1.ExposeHeader = []string{"obs-3", "obs-4"} corsRules[1] = corsRule1 input.CorsRules = corsRules[:] output, err := obsClient.SetBucketCors(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: Obtaining the Versioning Status of a Bucket
Next Article: Obtaining CORS Rules of a Bucket
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.