Access-Control-Allow-Headers
åºçº¿
广æ³å¯ç¨
*
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
* æ¤ç¹æ§çæäºé¨åçæ¯æç¨åº¦å¯è½ææä¸åã
Access-Control-Allow-Headers ååºæ 头ä¸ç¨äºååºå
å«äº Access-Control-Request-Headers ç颿£è¯·æ±ï¼ä»¥æç¤ºå¨å®é
请æ±ä¸å¯ä»¥ä½¿ç¨åªäº HTTP æ 头ã
å¦æè¯·æ±ä¸å
å« Access-Control-Request-Headers æ 头ï¼é£ä¹æ¤ååºæ 头æ¯å¿
éçã
夿³¨ï¼åå
¥ CORS ç½ååçè¯·æ±æ 头å§ç»è¢«å
许ï¼é常æ éå¨ Access-Control-Allow-Headers ä¸ååºï¼é¤éæå¿
è¦ç»è¿ç½ååçé¢å¤éå¶ï¼ã
| æ 头类å | ååºæ 头 |
|---|---|
| ç¦æ¢ä¿®æ¹çæ 头 | å¦ |
è¯æ³
Access-Control-Allow-Headers: [<header-name>[, <header-name>]*]
Access-Control-Allow-Headers: *
æä»¤
<header-name>-
æ¯æçè¯·æ±æ 头åç§°ãæ¤æ 头å¯ä»¥ååºä»»ææ°éçè¯·æ±æ 头ï¼ç¨éå·åéã
*ï¼éé 符ï¼-
â
*âå¼ä» 卿 åè¯ç请æ±ï¼å³ä¸å å« HTTP cookie æ HTTP 认è¯ä¿¡æ¯ç请æ±ï¼ä¸è§ä¸ºç¹æ®çéé 符å¼ãå¨å¸¦æåè¯ç请æ±ä¸ï¼å®è¢«å½ä½å颿ä¹çæ 头åç§°â*âå¤çï¼ä¸å ·æç¹æ®è¯ä¹ã请注æï¼å¨Authorizationæ 头ä¸è½è¢«æ³åå¤çï¼å§ç»éè¦æç¡®ååºã
示ä¾
>èªå®ä¹æ 头
以䏿¯ä¸ä¸ª Access-Control-Allow-Headers æ 头å¯è½çæ ·åãå®è¡¨ææå¡å¨æ¯æå为 X-Custom-Header çèªå®ä¹æ 头ï¼é¤äºåå
¥ CORS ç½ååçè¯·æ±æ 头ä¹å¤ï¼ã
Access-Control-Allow-Headers: X-Custom-Header
å¤ä¸ªæ 头
æ¤ç¤ºä¾å±ç¤ºäº Access-Control-Allow-Headers å¦ä½æå®æ¯æå¤ä¸ªæ 头çæ
åµã
Access-Control-Allow-Headers: X-Custom-Header, Upgrade-Insecure-Requests
ç»è¿é¢å¤éå¶
尽管åå
¥ CORS ç½ååçè¯·æ±æ 头å§ç»è¢«å
许ï¼å¹¶ä¸é常æ éå¨ Access-Control-Allow-Headers ä¸ååºï¼ä½æ 论å¦ä½ååºå®ä»¬é½å°ç»è¿éç¨çé¢å¤éå¶ã
Access-Control-Allow-Headers: Accept
颿£è¯·æ±ç¤ºä¾
让æä»¬æ¥çä¸ä¸ªæ¶å Access-Control-Allow-Headers ç颿£è¯·æ±ç示ä¾ã
请æ±
é¦å
ç请æ±ã颿£è¯·æ±æ¯ä¸ä¸ªä½¿ç¨ OPTIONS æ¹æ³ç请æ±ï¼å®å
å«é¢æ£è¯·æ±å¤´ä¸çä¸ä¸ªé¨åçæäºç»åï¼Access-Control-Request-MethodãAccess-Control-Request-Headers å Originã
ä¸é¢ç颿£è¯·æ±åç¥æå¡å¨ï¼æä»¬æ³è¦åéä¸ä¸ª CORS GET 请æ±ï¼å¹¶ä¸è¯¥è¯·æ±æºå¸¦ç Access-Control-Request-Headers ä¸ååºçæ 头ï¼å³ Content-Type å x-requested-withï¼ã
OPTIONS /resource/foo
Access-Control-Request-Method: GET
Access-Control-Request-Headers: Content-Type, x-requested-with
Origin: https://foo.bar.org
ååº
妿ç±é¢æ£è¯·æ±æç¤ºç CORS 请æ±è¢«ææï¼æå¡å¨å°ä½¿ç¨ä¸ä¸ªæ¶æ¯ååºé¢æ£è¯·æ±ï¼è¯¥æ¶æ¯è¡¨æå
è®¸çæºãæ¹æ³åæ 头ãå¦ä¸æç¤ºï¼Access-Control-Allow-Headers å
å«äºæè¯·æ±çæ 头信æ¯ã
HTTP/1.1 200 OK
Content-Length: 0
Connection: keep-alive
Access-Control-Allow-Origin: https://foo.bar.org
Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE
Access-Control-Allow-Headers: Content-Type, x-requested-with
Access-Control-Max-Age: 86400
å¦æè¯·æ±çæ¹æ³ä¸è¢«æ¯æï¼æå¡å¨å°ååºä¸ä¸ªé误ã
è§è
| è§è |
|---|
| Fetch > # http-access-control-allow-headers > |