Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 2debcf7

Browse files
committed
docs(bom): edit cors/withCredentials
1 parent 55b4ec6 commit 2debcf7

1 file changed

Lines changed: 9 additions & 9 deletions

File tree

‎docs/bom/cors.md‎

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -78,28 +78,28 @@ Content-Type: text/html; charset=utf-8
7878

7979
### withCredentials 属性
8080

81-
上面说到,CORS 请求默认不包含 Cookie 信息(以及 HTTP 认证信息等)。如果需要包含 Cookie 信息,一方面要服务器同意,指定`Access-Control-Allow-Credentials`字段。
81+
上面说到,CORS 请求默认不包含 Cookie 信息(以及 HTTP 认证信息等),这是为了降低 CSRF 攻击的风险。但是某些场合,服务器可能需要拿到 Cookie,这时需要服务器显式指定`Access-Control-Allow-Credentials`字段,告诉浏览器可以发送 Cookie
8282

8383
```http
8484
Access-Control-Allow-Credentials: true
8585
```
8686

87-
另一方面,开发者必须在 AJAX 请求中打开`withCredentials`属性。
87+
同时,开发者必须在 AJAX 请求中打开`withCredentials`属性。
8888

8989
```javascript
9090
var xhr = new XMLHttpRequest();
9191
xhr.withCredentials = true;
9292
```
9393

94-
否则,即使服务器同意发送 Cookie,浏览器也不会发送。或者,服务器要求设置 Cookie,浏览器也不会处理。
94+
否则,即使服务器要求发送 Cookie,浏览器也不会发送。或者,服务器要求设置 Cookie,浏览器也不会处理。
9595

96-
但是,如果省略`withCredentials`设置,有的浏览器还是会一起发送 Cookie。这时,可以显式关闭`withCredentials`
96+
但是,有的浏览器默认将`withCredentials`属性设为`true`。这导致如果省略`withCredentials`设置,这些浏览器可能还是会一起发送 Cookie。这时,可以显式关闭`withCredentials`
9797

9898
```javascript
9999
xhr.withCredentials = false;
100100
```
101101

102-
需要注意的是,如果要发送 Cookie,`Access-Control-Allow-Origin`就不能设为星号,必须指定明确的、与请求网页一致的域名。同时,Cookie 依然遵循同源政策,只有用服务器域名设置的 Cookie 才会上传,其他域名的 Cookie 并不会上传,且(跨域)原网页代码中的`document.cookie`也无法读取服务器域名下的 Cookie。
102+
需要注意的是,如果服务器要求浏览器发送 Cookie,`Access-Control-Allow-Origin`就不能设为星号,必须指定明确的、与请求网页一致的域名。同时,Cookie 依然遵循同源政策,只有用服务器域名设置的 Cookie 才会上传,其他域名的 Cookie 并不会上传,且(跨域)原网页代码中的`document.cookie`也无法读取服务器域名下的 Cookie。
103103

104104
## 非简单请求
105105

@@ -247,7 +247,7 @@ CORS 与 JSONP 的使用目的相同,但是比 JSONP 更强大。JSONP 只支
247247

248248
## 参考链接
249249

250-
- Monsur Hossain, [Using CORS](http://www.html5rocks.com/en/tutorials/cors/)
251-
- MDN, [HTTP access control (CORS)](https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS)
252-
- Ryan Miller, [CORS](https://frontendian.co/cors)
253-
250+
- [Using CORS](http://www.html5rocks.com/en/tutorials/cors/), Monsur Hossain
251+
- [HTTP access control (CORS)](https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS), MDN
252+
- [CORS](https://frontendian.co/cors), Ryan Miller
253+
-[Do You Really Know CORS?](http://performantcode.com/web/do-you-really-know-cors), Grzegorz Mirek

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /