文档首页/ OBS PHP SDK/ API参考/ 桶相关接口/ 设置桶的CORS配置
更新时间:2022-02-10 GMT+08:00

设置桶的CORS配置

功能说明

设置桶的跨域资源共享规则,以允许客户端浏览器进行跨域请求。

方法定义

1. ObsClient->setBucketCors(array $parameter)
2. ObsClient->setBucketCorsAsync(array $parameter, callable $callback)

请求参数

字段名

类型

约束

说明

Bucket

string

必选

桶名。

CorsRules

indexed array

必选

桶的CORS规则列表。

  

ID

string

可选

CORS规则ID,由不超过255个字符的字符串组成。

AllowedMethod

indexed array of strings

必选

CORS规则允许的HTTP方法,支持的值:

  • GET
  • PUT
  • HEAD
  • POST
  • DELETE

AllowedOrigin

indexed array of strings

必选

CORS规则允许的请求来源(表示域名的字符串)。可以带一个匹配符“*”,每一个AllowedOrigin最多可以带一个“*”通配符。

AllowedHeader

indexed array of strings

可选

CORS规则允许请求中可携带的头域,不可出现空格。可以带一个匹配符“*”,且每一个AllowedHeader最多可以带一个“*”通配符。

MaxAgeSeconds

integer

可选

CORS规则允许客户端可以对跨域请求返回结果的缓存时间,以秒为单位,整数类型。

ExposeHeader

indexed array of strings

可选

CORS规则允许响应中可返回的附加头域,不可出现空格。

返回结果

字段名

类型

说明

HttpStatusCode

integer

HTTP状态码。

Reason

string

HTTP文本描述。

RequestId

string

OBS服务端返回的请求ID。

代码样例

try{
       $resp = $obsClient -> setBucketCors([
              'Bucket' => 'bucketname',
              'CorsRules' => [
                     [
                           'ID' => 'rule1', 
                           'AllowedMethod' => ['PUT','POST','GET','DELETE','HEAD'],
                           'AllowedOrigin' => ['obs.hostname','obs.hostname1'],
                           'AllowedHeader' => ['obs-header-1'],
                           'MaxAgeSeconds' => 60
                     ],
                     [
                                  'ID' => 'rule2',
                                  'AllowedMethod' => ['PUT','POST','GET'],
                                  'AllowedOrigin' => ['obs.hostname','obs.hostname1'],
                                  'AllowedHeader' => ['header-1','header-2'],
                                  'MaxAgeSeconds' => 50
                     ]
              ]
       ]);
       printf("RequestId:%s\n", $resp['RequestId']);
}catch (Obs\Common\ObsException $obsException){
       printf("ExceptionCode:%s\n", $obsException->getExceptionCode());
       printf("ExceptionMessage:%s\n", $obsException->getExceptionMessage());
}