设置Cors跨域
更新时间:2022-04-15
跨域访问是指发起请求的资源所在域不同于该请求所指向的资源所在域,出于安全考虑,浏览器会限制这种非同源的访问。
CORS是一种基于HTTP头的机制,本接口用于配置加速域名处理/不处理跨域,仅包括 Origin 和 Access-Control-Allow-Origin 最简单的访问控制。
一种允许跨域场景是:本资源域(域名为a.baidu.com)在请求异域(域名为b.baidu.com,是使用了百度云CDN加速的域名)时带上请求头 Origin: http://a.baidu.com/ ,异域服务器通过响应头 Access-Control-Allow-Origin: * 告诉浏览器允许跨域。
Method | Path | 说明 |
---|---|---|
PUT | /v2/domain/{domain}/config?cors | 设置CORS跨域 |
请求体(Request Body)
参数 | 可选 | 类型 | 说明 |
---|---|---|---|
cors | 必选 | CorsConfig | CORS配置 |
CorsConfig类型说明
参数 | 可选 | 类型 | 说明 |
---|---|---|---|
allow | 必选 | String | on表示CDN处理跨域,off表示CDN不处理跨域 |
originList | 可选 | 数组 | 当allow为off时此项无效。表示跨域允许的域名列表,支持泛域名,每个url只支持一个通配符,比如"http:// *.baidu.com",不支持类似"http:// * . * .com/"的域名 |
请求示例:
PUT /v2/domain/myself.baidu.com/config?cors HTTP/1.1
Host: cdn.baidubce.com
Content-Length: 72
Content-Type: text/json;utf-8
{
"cors":
{
"allow":"on",
"originList":[
"http://www.baidu.com",
"http://*.bce.com"
]
}
}
响应码 (Http Status Code)
HTTP Status Code | 说明 |
---|---|
200 | 成功 |
400 | 更新失败,参数错误等 |
响应体 (Response Body)
参数 | 类型 | 说明 |
---|---|---|
status | String | 刚更新成功返回的status是OPERATING |
响应示例:
HTTP/1.1 200 OK
Server: nginx/1.14.0
Date: Fri, 21 Sep 2018 03:46:35 GMT
Content-Type: application/json; charset=utf-8
Transfer-Encoding: chunkedConnection: keep-alive
X-Powered-By: PHP/5.6.36
x-bce-request-id: dd490e5d-64da-e2b-1cdd-fc98c864dfd
{"status":"OPERATING"}