Kanazawa.js Remote Meetup #06ã®è³æã§ãã https://kanazawajs.connpass.com/event/188109/
Kanazawa.js Remote Meetup #06ã®è³æã§ãã https://kanazawajs.connpass.com/event/188109/
ã©ãã@kimihom ã§ãã ä»å㯠Cache API ã使ãæ©ä¼ããã£ãã®ã§ã調æ»çµæã¨å©ç¨ã®ã¦ã¼ã¹ã±ã¼ã¹ã¨å ±ã«ç´¹ä»ãããããµã¼ãã¼ãµã¤ããã©ããªã«é«éåããããããããã³ãã¨ã³ã㧠ãããããªã¯ã¨ã¹ãããããªã ä»çµã¿ã«ããã°ããããæãéãã¨ããã®ãæ¹ãã¦æããã Service Worker 㨠Cache API ãService Worker ã使ãã°ããªãã©ã¤ã³ã§ãã¢ã¯ã»ã¹ã§ããããã«ãªããã£ã¦ããã®ãããèã話ã ããããããå®ç¾ããã«ã¯ãCache API 㨠Service Worker ã®2ã¤ãçµã¿åããããã¨ã§å®ç¾ã§ãããService Worker ã使ãã¨ããã¼ã¸ãªã¯ã¨ã¹ãæã®ã¤ãã³ãã横åããããã¨ãã§ããããããããå®ç¾ã§ããã詳ããã¯ä»¥ä¸ã® Qiita ãåèã«ãªãã ServiceWorkerã¨Cache APIã使ã£ã¦ãªãã©ã¤ã³ã§ãåãWebã¢ããªã
PWAãSPAãService Workerã¨ã¯ï¼ï¼åç·¨ã§è§£èª¬ï¼SPAãå¯è½ã«ããApp Shellã¢ã¼ããã¯ãã£ï¼ä¸ç·¨ã§è§£èª¬ï¼Service Workerããã¤å§åçãªåã¾ã¨ã3. Service Workerããã¤å§åçãªåæåã«ã¯ã£ããããã¦ãããããã¨ããããããã¯ãããã¾ã§ã§è§£èª¬ãã¦ãããSPAãã¨ãããããåãä¸ãããService Workerï¼ãµã¼ãã¹ã»ã¯ã¼ã«ã¼ï¼ãã¯ãäºãã«æä»çãªãã®ã§ã¯ãªãã¨ãããã¨ã ã ã¤ã¾ããã®2ã¤ã¯å ±åãããã®ã ã¨ãããã¨ã ãã©ã¡ããPWAã¨å¼ã°ãããã®ã®åºç¤ã¨ãªã£ã¦ããããSPAã§ã¯ãªãPWAãã¤ãããã¨ãå¯è½ã ããå¾æ¥ã®éçãªã¦ã§ããµã¤ãï¼ã¯ã©ã¤ã¢ã³ããµã¤ãã§ã¬ã³ããªã³ã°ããå¦çããªããµã¤ãï¼ã«Service Workerãçµ±åãããã¨ãã§ããï¼è¿ãå°æ¥ããã®ãããªãµã¤ããå¢ããåã¯æã£ã¦ããï¼ã ããã«ãService Workerã¯ã¦ã§ã
ServiceWorker ã¨ã¯æ¬è³ªçã« ãªã¯ã¨ã¹ãï¼ã¬ã¹ãã³ã¹ã¢ãã«ã§ããã®ã§ãããããµã¼ãã¼ãµã¤ãã§å®è£ ã§ä¸ç¨®ã®ãµã¼ãã¼ãã¸ãã¯ã¨ãã¦åããã¦ãã¾ã£ã¦è¯ãã¯ãã ã¼ ã¨ããçºæ³ã«ç®ããé±ã ã£ãã®ã§ãã¡ãã£ã¨èãã¦ã¿ããã¨æãã www.publickey1.jp ããã§è©¦ããã https://cloudflareworkers.com/#a9bc9ef6b4248289c71518581df30bc7:https://tutorial.cloudflareworkers.com Cloudflare ã¯CDNæ¥è ãªã®ã§ã ããã«ç¹åã㦠Service Worker as a Service ã¿ãããªè¡¨ç¾ã¯ãã¦ããªãããå®æ ã¨ãã¦ã¯ãµã¼ãã¼ãµã¤ã ServiceWorker ã ãFastly ã§ã¯ varnish ã®ããã«ã¦ã§ã¢ãªã©ã§ãã£ãã·ã¥ç ´æ£è¨å®ã®ãã¸ãã¯ããªãã¤ã¬ã¯ããæ¸ãã¦
CDNãããã¤ãã®Cloudflareã¯ãå社ãæä¾ããã°ãã¼ãã«ãªã³ã³ãã³ãããªããªã¼ãããã¯ã¼ã¯ï¼CDNï¼ã®ã¨ãã¸ã«ããã¦ãéçºè ãJavaScriptã®ã³ã¼ããé ç½®ãå®è¡ã§ããæ°æ©è½ãCloudflare Workersãã®ä¸è¬æä¾ãéå§ããã¨çºè¡¨ãã¾ããã Cloudflare Workersãå©ç¨ããã¨ãéçºè ã¯ãããã¯ã¼ã¯ã®åããå´ã«ããã¯ã©ã¦ãã§ã¯ãªããå©ç¨è ã«ãã£ã¨ãè¿ãCDNã®ã¨ãã¸ã«ä½ç½®ããCloudflareã®ãã¼ã¿ã»ã³ã¿ã¼å ã§JavaScriptã®ã³ã¼ããå®è¡ã§ããããã«ãªãã¾ãã ããã«ãã£ã¦ã¯ã©ã¤ã¢ã³ãã«å¯¾ãã¦é常ã«é«éã«ã¬ã¹ãã³ã¹ãè¿ããã¨ãã§ããåºç¯å²ã«åæ£ãããé«ãåé·æ§ãæã¤åæ£ã·ã¹ãã ãæ§ç¯å¯è½ã«ãªãã¾ãã å社ã¯æ¥æ¬ãå«ãä¸çä¸ã«127ã®ãã¼ã¿ã»ã³ã¿ã¼ãå±éãã¦ãã¾ãã ãã¯ã©ã¦ãã®å¤¢ããCloudflare Workersã§ã§ããã㨠Cloudf
Service Worker ã®å®è£ ã主è¦ãã©ã¦ã¶ã§æãå§ãã¦çãä¸ãã£ã¦ãã¾ãããããã®æµãã«ä¾¿ä¹ãã¦ä¹ ãã¶ãã« Service Worker ã®ä»æ§ãå®è£ ã«é¢ããè¨äºãæ¸ãã¦ã¿ã¾ãããä»å㯠Service Worker ã¹ã¯ãªããã®ã¤ã³ã¹ãã¼ã«ã¨æ´æ°å¦çã«ã¤ãã¦ã§ãã ãã®è¨äºã¯ Service Worker ã¹ã¯ãªãããå°ãã§ãææ¸ããã¦åããããã¨ããã人ãæ³å®èªè ã«ãã¦ãã¾ããService Worker ã«ã¤ãã¦å ¨ãç¥ããªã人ã¯ã¾ãå¥ã®å ¥éè¨äºãåç §ãã¦ãã ãããã¾ããç´°ãããã¨ãæ°ã«ããã« Service Worker ã使ããã人㯠Workbox ã¨ãã£ãã©ã¤ãã©ãªããã¬ã¼ã ã¯ã¼ã¯ã®å©ç¨ããããããã¾ãã æ´æ°å±¥æ´ 2019/09/24: Chrome 78 ãã importScripts() ãæ´æ°å¯¾è±¡ã«ãªãã¾ãããããã«ã¤ãã¦å çãã¾ããã 2018/06/07:
ããã°ã¬ãã·ã ã¦ã§ãã¢ããª: ãªãã©ã¤ã³ ã³ã¬ã¯ã·ã§ã³ã§ã³ã³ãã³ããæ´ç å¿ è¦ã«å¿ãã¦ãã³ã³ãã³ãã®ä¿åã¨åé¡ãè¡ãã¾ãã 1. ãããã ãã®ã©ãã§ã¯ãæ¢åã®ã¦ã§ã ã¢ããªã±ã¼ã·ã§ã³ããªãã©ã¤ã³ã§ä½¿ç¨ã§ããããã«ãã¾ããããã¯ãããã°ã¬ãã·ã ã¦ã§ãã¢ã㪠ã¯ã¼ã¯ã·ã§ããã®ä¸é£ã®ã³ã³ãããªã³ Codelab ã®æåã§ãããã®ã·ãªã¼ãºã«ã¯ããã« 7 ã¤ã® Codelab ãããã¾ãã å¦ç¿å 容 Service Worker ãæåã§ä½æãã æ¢åã®ã¦ã§ã ã¢ããªã±ã¼ã·ã§ã³ã« Service Worker ã追å ãã Service Worker 㨠Cache Storage API ã使ç¨ãã¦ãªã½ã¼ã¹ããªãã©ã¤ã³ã§ä½¿ç¨ã§ããããã«ãã å¿ è¦ãªäºåç¥è ç°¡æ HTML 㨠JavaScript å¿ è¦ãªãã® Service Worker ããµãã¼ããããã©ã¦ã¶ 2. æºå ã¾ãããã® Co
ã»WEB pushéç¥ ã»ããã¯ã°ã©ã¦ã³ãå¦ç ã»ãªãã©ã¤ã³åä½ ã»PWAï¼Progressive Web Appsï¼å ãªã©ãªã©ããã®åãã®ä¸æ©ã¨ãã¦Service Workerãæå°æ§æã§å°å ¥ãã¦ã¿ã å ¨ã¦åããã£ã¬ã¯ããªã«é ç½® â index.html â main.js â sw.js index.html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Service Worker Test</title> <script src="main.js"></scri
workbox-swã®ä½¿ãæ¹ GMOããã Advent Calendar 2017ã®11æ¥åã®ã¨ã³ããªã¼ã«ãªãã¾ãã çããã¯PWA(Progressive Web Apps)ããåç¥ã§ããããã åããããããåªå ãã¦è¨ããªãã°ãæ°ããæè¡ã«ãã£ã¦ãã¤ãã£ãã¢ããªã®ãããªåä½ãå¯è½ã«ãªã£ãWebã¢ããªã±ã¼ã·ã§ã³ã®ãã¨ã§ããªãã©ã¤ã³ã§åä½ãããããã·ã¥éç¥ãéããWebã¢ããªã±ã¼ã·ã§ã³ãå®ç¾ãããã¨ãã§ãã¾ãã ï¼è©³ç´°ã¯Google Developersãç§ã®çºè¡¨ã¹ã©ã¤ãããåç §ãã ããï¼ ãã¦ä»åã¯PWAä½æã«ããã£ã¦ã¨ã¦ã便å©ãªã©ã¤ãã©ãªã§ããworkbox-swï¼ä»¥ä¸ãworkboxï¼ã®ç´¹ä»è¨äºã¨ãªãã¾ãã workboxã¨ã¯ç°¡åãªè¨è¿°ã§æé©ãªServiceWorkerã®ã³ã¼ããçæãã¦ãããã©ã¤ãã©ãªã§ãã PWAèªä½ã©ãããã¾ã èªç¥åº¦ãä½ãããããä½ãããã®ã©ã¤ãã©ãªé¢é£ãã¾ã
pwa_study - connpassã«åå ãã¦ããã®ã§ã¡ã¢ã ç¨èª SW = Service Worker XSS = cross site scripting Fetch = Fetch API ã¦ã§ã«ã«ã LT ã¯ã©ã¤ã¢ã³ããµã¤ãDDDãè¡ãããããã«ãªã£ã¦ãã ã¯ã©ã¤ã¢ã³ããµã¤ãã«ãã¸ãã¯ãå¯ã£ã¦ãã¦ã é£ãã Service Workerãã¯ã©ã¤ã¢ã³ããµã¤ãã«ãããããã¸ãã¯ãä»çµã¿ããã£ã¦ããã¨ããç¾è±¡ã®ä¸ã¤ãªã®ã§ã¯ Service Worker Lifecycle - laco ã¹ã©ã¤ã: Service Worker Lifecycle by Suguru Inatomi SWã®ã©ã¤ããµã¤ã¯ã« Service Worker ã®ã©ã¤ããµã¤ã¯ã«  | Web  | Google Developers ããããã°å¤§ä½åãã ã¹ã©ã¤ã -> è¨äºèªãã¨è¯ã register -
Intro Service Worker 㧠Fetch ã Proxy ããå ´åã Fetch çºçæã« SW ãèµ·åãã¦ããªããã°ããã®èµ·åãå¾ ã¤å¿ è¦ãåºãã ããã¦ããã® SW ã®èµ·åã«ã¯ç¡è¦ã§ããªãæéããããå ´åããã£ãã ãããæ¹åãã Navigation Preload ã«ã¤ãã¦è§£èª¬ããã SW Bootup SW ã onfetch ããã³ãã«ãããã£ãã·ã¥ãã Response ãè¿ãå ´åã¯ããããã¯ã¼ã¯ I/O ãããã«ç»é¢ãã¬ã³ããªã³ã°ã§ããã ãããã SW ã onfetch ãããã¯ãã¦ãã¦ããªããå®éã«ãããã¯ã¼ã¯ã«ãªã¯ã¨ã¹ããæããå ´åã¯å°ãªããªãã ãã®å ´åããããã¼ã¸ã®ã³ã³ããã¼ã©ã¨ãªã£ã¦ãã SW ãèµ·åãã¦ããªãå ´åã¯ã onfetch ãã³ãã©ãå®è¡ããããã«ã SW ã®èµ·åãå¾ ã¤å¿ è¦ãåºã¦ããã SW ã®èµ·åã«ã¯ããã¡ããå®è¡ç°å¢ã«ããã¨ããã
You can read this post in English. ã¿ãªããããã«ã¡ã¯ãFRESH! ã§ããã³ãã¨ã³ãã®éçºãã¦ããé´æ¨(sutiwo)ã§ãã ååã¯ãFRESH!ã«ãããPCãã©ã¦ã¶ã®Flashè±å´ã¨ãã HLS ã® Web ãã¬ã¤ã¤ã¼ã«ã¤ãã¦è¨äºãæ¸ãã¾ããã ä»åã¯ã¹ãã¼ããã©ã³ã» PC ã§ã®ãã©ã¦ã¶ã«é¢ããããã©ã¼ãã³ã¹æ¹åã®åãçµã¿ã¨ãã®çµæã«ã¤ãã¦ãç¥ãããã¾ãã ã¾ãã¯ã©ã¤ã¢ã³ããµã¤ãã®ããã©ã¼ãã³ã¹æ¹åãè¡ãã«ããããå¼ç¤¾ã® Web Initiative Center* ãã 1000ch æ°ã«å ãã£ã¦ããã ãã©ã®ãããªãã¨ãç®æ¨ã¨ãããè°è«ãã¾ããã * Web ãããã¯ãã®å質åä¸ã¨Webæè¡ã使ã£ããã£ã¬ã³ã¸ãç®çã«è¨ç«ãããå¼ç¤¾ã®çµç¹ è°è«ã®æ§å è°è«ãè¡ã£ãå¾ãä»åã®æ¹åã§ä»¥ä¸ã®ãã¨ã«åãçµããã¨ã決ã¾ãã¾ããã Service Worker ã§
jQueryã使ããã«Ajaxããããã¦ãã¨ã¯ããçã®XHRï¼XMLHttpRequest ï¼ãæ±ãã®ã¯ããã©ãããã£ã¦ããã¨ãã«ãFetch APIã使ã£ã¦ã¿ã¾ããããã®ã¨ã調ã¹ããã¨ã®è¦ãæ¸ãã§ãã Fetch APIã£ã¦ï¼ ããã«ãJxckå çã®ãã°ãããè¨äºãããã¾ãã jxck.hatenablog.com æ£ç´ããããç解ã§ãã¦ãªãã®ã§ããï¼ðï¼ããã®ããããã£ããããã¨ã jQueryã®Ajax並ã«ç°¡æ½ã«è¨è¿°ã§ãã Promiseãã¼ã¹ã®è¨è¨ã§ãçµæã¯Promiseã§è¿ããã XHRãããç´°ããªå¶å¾¡ãã§ãã ã¿ãããªæããªã®ããªã¨æãã¾ããã ã¡ãªã¿ã«ãå ã®è¨äºã§ã¯åãªãXHRã®ä»£ãããããªãã¨è¨è¼ããã¦ãã®ã§ãFetchã¨ãFetch APIã®ç解ã«ã¯ãã¡ããèªãã§ããã£ãæ¹ããããã¨æãã¾ããã ãã©ã¦ã¶ãµãã¼ãç¶æ³ Can I use... Support table
Service Workerã¨ã¯ ãã©ã¦ã¶ã Web ãã¼ã¸ã¨ã¯å¥ã«ããã¯ã°ã©ã¦ã³ãã§å®è¡ããã¹ã¯ãªãã ãªãã©ã¤ã³ã®ã¢ããªãå®ç¾ã»ãµãã¼ãããããã«ä½ããããã®ã§ã ã¡ãªã¿ã«ããã©ã¦ã¶ã®å¯¾å¿ç¶æ³ã¯ãããªæã http://caniuse.com/#search=service%20workers ç¹å¾´ DOM ã«ã¢ã¯ã»ã¹ã§ããªã DOM ãæä½ãããå ´åã¯ãService Worker ãã³ã³ããã¼ã«ãã¦ãããã¼ã¸(js)㨠postMessage ã§ã¡ãã»ã¼ã¸ã®ããåãããã¦è¡ã ãªã¯ã¨ã¹ãããããã·ãããã¨ãå¯è½ Service Worker ã¯ãã©ã¦ã¶ãå¿ è¦ã«å¿ãã¦èµ·åã»çµäºããã®ã§ãå¤æ°ã®å¤ãä¿æãã¦ãããªã CacheãIndexedDB çã§å¤ãä¿åãã¦ãå¿ è¦ã«ãªã£ãæã«åãåºãããã«ãã Promise ãå¤ç¨ãã https ã localhost ä¸ã§ããåä½ããªã ã©
ãã¥ã¼ã¹æè¡ã®æè¤ã§ã 07/13(é)ã«ç¤¾å ã®æ°åã§GoogleforMobileã«åå ãã¦ãã¾ãã https://events.withgoogle.com/google-for-mobile/program/ å¤ãã®ã»ãã·ã§ã³ããããå ¨ä½ã¨ãã¦ã¯å æ¥ã®GoogleI/Oã§çºè¡¨ãããFireBaseã«ã¤ãã¦ã®å 容ãå¤ããGoogleã®Firebaseã«å¯¾ããå¼·ãææãæãããã¾ãã ãã®è¨äºã§ã¯GoogleforMobileã§ã2ã»ãã·ã§ã³çºè¡¨ãããã¾ãããããã°ã¬ãã·ãã¦ã§ãã¢ããªã®ç´¹ä»ããã¾ã ããã°ã¬ãã·ãã¦ã§ãã¢ããªã¨ã¯webã¢ããªã¨ãã¤ãã£ãã¢ããªä¸¡æ¹ã®è¯ãé¨åãå ¼ãåãããwebã¢ããªã§ã (æç§æ¸éãã«å®è£ ããã°)ç¹å¾´ã¯ä¸è¨ã®éãã§ã ãã¼ã ç»é¢ããã®èµ·åãã¼ã ç»é¢ã«è¿½å ãããã¨ã§ããããããã¤ãã£ãã¢ããªãã®ããã«èµ·åã§ãã¾ã Pushãã¤ãã£ãã¢ããªã®ããã·ã¥éç¥ã
#ã¯ããã« Thetaã®360°ç»åã«ã¼ãããå ¥ããWebã¢ããªSphereBlur.comãä½ã£ãéã«ããªãã©ã¤ã³ã§ãåãããã«ããããã«ãHTML5ã®æ°ããæè¡Service Workerã使ã£ãããªããä¸ã®åç»ã§ãã¼ã ç»é¢ãããã¤ãã£ãã¢ããªã£ã½ãèµ·åãã¦ããã®ã¯Web App Manifestã®ãããã§ããã #Service Worker Service Workerã¯ãé常ã®ãã¼ã¸ã®ç°å¢ã¨ã¯å¥ã«ãããã¯ã°ã©ã¦ã³ãã§å®è¡ãããJavaScriptå®è¡ç°å¢ã§ããã¼ã¸ããã®ãããã¯ã¼ã¯ãªã¯ã¨ã¹ãã横åãããããã¦ã§ããµã¤ãããã®Pushéç¥ãåãã¨ã£ã¦è¡¨ç¤ºããã¨ãã£ããä»ã¾ã§ã¯ã§ããªãã£ãå¦çããããã¨ãã§ãããPushéç¥ã®æ¹ã¯ãå»å¹´Facebookã使ãå§ããã®ã§æåã«ãªã£ãããä»åã¯Pushéç¥ã§ã¯ãªãããããã¯ã¼ã¯ãªã¯ã¨ã¹ãã横åãããæ©è½ã使ã£ã¦ãªãã©ã¤ã³å¯¾å¿ãããã #ã
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}