Baseline Widely available *
å®å ¨ä¸ä¸æ: æ¤é¡¹åè½ä» å¨ä¸äºæ¯æçæµè§å¨çå®å ¨ä¸ä¸æï¼HTTPSï¼ä¸å¯ç¨ã
Web å卿 åï¼the Storage Standardï¼å®ä¹äºä¸ä¸ªéç¨çãå ±äº«çåå¨ç³»ç»ï¼ä¾ææ API åææ¯ä½¿ç¨ï¼ä»¥åå¨å个ç½ç«çå 容å¯è®¿é®æ°æ®ãStorage API å 许ç½ç«ç代ç ãWeb åºç¨ç¨åºç¥éå®ä»¬å¯ä»¥ä½¿ç¨ãå·²ç»ä½¿ç¨å¤å°åå¨ç©ºé´ã空é´ä¸è¶³æ¶ï¼ç¨æ·ä»£çä¼èªå¨æ¸ çç«ç¹æ°æ®ï¼ä»¥ä¾¿ä¸ºå ¶ä»ç¨éè ¾åºç©ºé´ãè Storage API çè³å¯ä»¥æ§å¶ï¼å¨æ§è¡æ¸ çä¹åï¼æ¯å¦éè¦æéä»£ç æ Web åºç¨ç¨åºï¼ä»¥ä¾¿ä½åºååºã
夿³¨ï¼ æ¤ç¹æ§å¨ Web Worker ä¸å¯ç¨ã
ç«ç¹åå¨ââç±å卿 å管ççç½ç«æ°æ®ââå æ¬ä»¥ä¸å ç§ï¼
window.localStorage
History.pushState()
ä¿åçåå²ç¶æä¿¡æ¯ç±å卿 åæè¿°å¹¶ä½¿ç¨åå¨ API è¿è¡äº¤äºçç«ç¹åå¨ç³»ç»ï¼ç±æ¯ä¸ª origin çå个ç«ç¹åå¨åå ï¼site storage unitï¼ç»æãå®é ä¸ï¼æ¯ä¸ª Web ç«ç¹æ Web åºç¨ç¨åºé½æèªå·±çåå¨åå ï¼ç¨äºå卿°æ®ãä¸å¾æ¾ç¤ºäºä¸ä¸ªç«ç¹å卿± ï¼å ¶ä¸å å«ä¸ä¸ªåå¨åå ï¼æ¾ç¤ºäºåå¨åå å¦ä½å¯ä»¥å¨å ¶ä¸åå¨ä¸åçæ°æ®ç±»åï¼å¹¶ä¸å¯è½å ·æä¸åçé é¢ï¼æå¤§åå¨éå¶ï¼ã
User agent å¯è½ä½¿ç¨åç§ææ¯æ¥ç¡®å®åç§æ¥æºçé é¢ãè§èç¹å«é¼å±çãææå¯è½çæ¹æ³ä¹ä¸ï¼å®é 䏿¯èèå个ç«ç¹çæµè¡ç¨åº¦ å/æä½¿ç¨æ°´å¹³ï¼ä»¥ç¡®å®å®ä»¬çé é¢åºè¯¥æ¯ä»ä¹ãè¿å¯ä»¥æ³è±¡ï¼æµè§å¨å¯è½ä¼æä¾ä¸ä¸ªç¨æ·ç颿¥å®å¶è¿äºé é¢ã
å卿¨¡å¼æ¯ä¸ªç«ç¹åå¨åå ä¸çå®é æ°æ®åå¨ï¼è¢«ç§°ä¸ºå®çæ¡ / çï¼boxï¼ãæ¯ä¸ªç«ç¹åå¨åå åªæä¸ä¸ªçï¼çä¸å å«å ¶æææ°æ®ï¼ä¸æä¸ä¸ªçå卿¨¡å¼ / å卿¨¡å¼ï¼box modeï¼ï¼ç¨äºæè¿°å ¶æ°æ®ä¿ççç¥ãç®åæä¸¤ç§æ¨¡å¼ï¼
"best-effort"
ç¨æ·ä»£çå°ä¼å°å°½å¯è½ä¹ å°ä¿ç box ä¸å å«çæ°æ®ï¼ä½è¥å åå¨ç©ºé´ä¸è¶³å¿å¿ é¡»æ¸ ç©º box 以鿾åå¨ååæ¶ï¼ç¨æ·ä»£çä¸ä¼è¦åç¨æ·ã
"persistent"
ç¨æ·ä»£çå°ä¼å°å°½å¯è½ä¹
å°ä¿çæ¤æ¨¡å¼çæ°æ®ï¼åªæå¨ææè¢«æ 记为 "best-effort"
ç box é½å·²è¢«æ¸
çåï¼æä¼æ¸
ç被æ 记为 "persistent"
ç boxã妿éè¦èèæ¸
餿ä¹
æ§æ¡ï¼persistent boxesï¼ï¼ç¨æ·ä»£çå°éç¥ç¨æ·ï¼å¹¶æ ¹æ®éè¦æä¾æ¸
é¤ä¸ä¸ªæå¤ä¸ªæä¹
æ§æ¡ï¼persistent boxesï¼çæ¹æ³ã
ä¿®æ¹æä¸ªæ¥æºç box mode éè¦åå¾ä½¿ç¨ "persistent-storage"
ç¹æ§çæéã
妿ç«ç¹æåºç¨ç¨åºå
·æâæ°¸ä¹
åå¨ï¼persistent-storage
ï¼âåè½æéï¼åå¯ä»¥ä½¿ç¨ StorageManager.persist()
æ¹æ³æ¥è¯·æ±å°å
¶ box 设为æä¹
çãç±äºä½¿ç¨ç¹æ§æå
¶ä»åº¦éï¼ç¨æ·ä»£çè¿å¯ä»¥å³å®ä½¿ç«ç¹çåå¨åå
æä¹
åãâæä¹
åå¨âåè½ç䏿éç¸å
³çæ å¿ãç®æ³åç±»åé½è®¾ç½®ä¸ºæéçæ åé»è®¤å¼ï¼åªæ¯æ´ä¸ªæºä½ç½®çæéç¶æå¿
é¡»ç¸åï¼å¹¶ä¸å¦ææªâæäºâæéç¶æï¼æ 论åºäºä½ç§åå ï¼è®¿é®æä¹
æ§åå¨åè½è¢«æç»ï¼ï¼æºç«ç¹åå¨åå
ç box æ¨¡å¼æ»æ¯âå°½åâã
夿³¨ï¼ 请åè ä½¿ç¨ Permissions API 以äºè§£æ´å¤å ³äºç³è¯·ä¸ç®¡çæéçä¿¡æ¯ã
彿¸ é¤ç«ç¹åå¨åå æ¶ï¼æºç«çæ¡è¢«è§ä¸ºå个å®ä½ï¼å¦æç¨æ·ä»£çéè¦æ¸ é¤å®å¹¶ä¸ç¨æ·æ¹åï¼åæ¸ é¤æ´ä¸ªæ°æ®åå¨ï¼è䏿¯æä¾æç§ä» ä»å个 api æ¸ é¤æ°æ®çæ¹æ³ã
妿ä¸ä¸ªæ¡è¢«æ 记为âæä¹
ï¼persistent
ï¼â ï¼é£ä¹å¦ææ²¡ææ°æ®çæºä»£ç æ¬èº«æç¨æ·æç¡®å°è¿æ ·åï¼ç¨æ·ä»£çå°ä¸ä¼æ¸
é¤å
容ãè¿å
æ¬ç¨æ·éæ©âæ¸
é¤ç¼åâæâæ¸
餿è¿çåå²è®°å½âé项çåºæ¯ãå°ç¹å«è¦æ±ç¨æ·å
·æå 餿°¸ä¹
æ§ç«ç¹åå¨åå
çæéã
The user agent determines, using whatever mechanism it chooses, the maximum amount of storage a given site can use. This maximum is the origin's quota. The amount of this space which is in use by the site is called its usage. Both of these values are estimates; there are several reasons why they're not precise:
User agents may use any method they choose to determine the size of origins' quotas, and are encouraged by the specification to provide popular or frequently-used sites with extra space.
To determine the estimated quota and usage values for a given origin, use the navigator.storage.estimate()
method, which returns a promise that, when resolved, receives a StorageEstimate
that contains these figures. For example:
navigator.storage.estimate().then((estimate) => {
// estimate.quota æ¯ä¼°å¾çé
é¢
// estimate.usage æ¯ä¼°å¾ç使ç¨éï¼åä½ä¸º byte æ¯ç¹
});
è§è æµè§å¨å
¼å®¹æ§ åè§
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4