WorkerGlobalScopeï¼fetch() æ¹æ³
åºçº¿
广æ³å¯ç¨
*
èª 2017å¹´3æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
* æ¤ç¹æ§çæäºé¨åçæ¯æç¨åº¦å¯è½ææä¸åã
WorkerGlobalScope æ¥å£ç fetch() æ¹æ³ç¨äºåèµ·è·åèµæºç请æ±ï¼å®ä¼è¿åä¸ä¸ªä¼å¨è¯·æ±ååºåå
ç°ç promiseã
该 promise ä¼å
ç°ä¸ä¸ªè¡¨ç¤ºè¯·æ±ååºç Response 对象ã
å½è¯·æ±å¤±è´¥ï¼ä¾å¦ï¼å ä¸ºè¯·æ± URL çæ ¼å¼é误æç½ç»éè¯¯ï¼æ¶ï¼fetch() ç promise æä¼è¢«æç»ãfetch() ç promise ä¸ä¼å 为æå¡å¨ååºè¡¨ç¤ºé误ç HTTP ç¶æç ï¼404ã504ï¼çï¼è被æç»ãå æ¤ï¼then() å¤çå¨å¿
é¡»æ£æ¥ Response.ok å/æ Response.status 屿§ã
fetch() æ¹æ³ç±å
容å®å
¨çç¥ç connect-src æä»¤ï¼è䏿¯å®æ¥è¯¢çèµæºçæä»¤ï¼æ§å¶ã
夿³¨ï¼fetch() æ¹æ³çåæ°ä¸ Request() æé 彿°æ¯ä¸æ ·çã
è¯æ³
fetch(resource)
fetch(resource, options)
åæ°
resource-
å®ä¹ä½ æ³è¦è·åçèµæºãå¯ä»¥æ¯ï¼
- ä¸ä¸ªå符串æä»»ä½å
¶ä»å
·æå符串åå¨ç对象ï¼å
æ¬
URL对象ï¼ï¼æä¾ä½ æ³è¦è·åçèµæºç URLãURL å¯ä»¥æ¯ç¸å¯¹äºåºç¡ URL çï¼åºç¡ URL æ¯çªå£ä¸ä¸æä¸ææ¡£çbaseURIæè worker ä¸ä¸æä¸çWorkerGlobalScope.locationã - ä¸ä¸ª
Request对象ã
- ä¸ä¸ªå符串æä»»ä½å
¶ä»å
·æå符串åå¨ç对象ï¼å
æ¬
optionså¯é-
ä¸ä¸ªå å«ä½ æ³è¦åºç¨å°è¯·æ±ä¸çä»»ä½èªå®ä¹è®¾ç½®ç
RequestInit对象ã
è¿åå¼
å¼å¸¸
AbortErrorDOMException-
请æ±è¢«
AbortControllerçabort()æ¹æ³è°ç¨æç»æ¢ã NotAllowedErrorDOMException-
妿 Topics API ç使ç¨è¢«
browsing-topicsæéçç¥æç¡®ç¦æ¢ï¼ä¸fetch()请æ±ä¸å å«browsingTopics: trueï¼åä¼æåºæ¤å¼å¸¸ã TypeError-
å½è·åæä½æ æ³æ§è¡æ¶æåºçé误ã请åé
Window.fetch()çå¼å¸¸ï¼ä»¥äºè§£å¯è½å¯¼è´æ¤é误çåå ã
示ä¾
åè§ fetch() 以è·å示ä¾ã
è§è
| è§è |
|---|
| Fetch > # fetch-method > |