Submit Search
ServiceWorkerでつくるWebの未来
0 likes
184 views
Yoshiki Kobayashi
ServiceWorkerでできる機能の紹介と、そのサンプル
Engineering
Read more
1 of 25
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
More Related Content
PPTX
PowerShellでFunction Appしよう!
Tsubasa Yoshino
PDF
無料で始めるアプリのバックエンド開発
Shoichi Takagi
PPTX
smartFXにおけるApache Cordovaの活用について
剛志 森田
KEY
スマートフォンアプリケーション開発の最新動向
Tsutomu Ogasawara
PDF
Vtecxlt20151201
Shinichiro Takezaki
PPTX
Cognitive serviceのすゝめ
Tsubasa Yoshino
PDF
はじめてのモバイルウェブアプリ 1
Taisuke Fukuno
PDF
楽ちんユーザー認証付Spa
Takahiro Tsuchiya
PowerShellでFunction Appしよう!
Tsubasa Yoshino
無料で始めるアプリのバックエンド開発
Shoichi Takagi
smartFXにおけるApache Cordovaの活用について
剛志 森田
スマートフォンアプリケーション開発の最新動向
Tsutomu Ogasawara
Vtecxlt20151201
Shinichiro Takezaki
Cognitive serviceのすゝめ
Tsubasa Yoshino
はじめてのモバイルウェブアプリ 1
Taisuke Fukuno
楽ちんユーザー認証付Spa
Takahiro Tsuchiya
What's hot
(20)
PDF
はじめてのモバイルウェブアプリ 2
Taisuke Fukuno
PPTX
WordPressサイトをスマホアプリにしちゃおう!
Ryu Shindo
PDF
スマホアプリ開発者のためのWeb api開発入門の入門
Kenyu Miura
PDF
スキスキIonic
Kon Yuichi
PPTX
APIモック3分クッキング
政雄 金森
PDF
KLabのSI事業について
KLab株式会社
PPTX
Hello, React!! まで導く Reactの基礎
iPride Co., Ltd.
PPTX
Hacker's meetup boost_vol1発表資料_20150902
真一 藤川
PPTX
パララックスでレスポンシブでJ query mobileなサイトのつくりかた
Shumpei Shiraishi
PPTX
オフラインWebアプリケーションのつくりかた
Shumpei Shiraishi
PDF
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
yoshikawa_t
PDF
もっと良くなるHTMLアプリケーション設計と実装
Mitsue-Links
PPTX
PWAがたぶんくる
Ryu Shindo
KEY
みなさんがHtml5をやらなくていい3つの理由
Masakazu Muraoka
PDF
テックブログのすゝめ -アウトプットで知識習得サイクルを回そう-
Shinya Mori (@mosuke5)
PPTX
SendGrid Night in Fukuoka #1
Wataru Sato
PDF
PHP実践 ~外部APIを使って情報を取得する~
schoowebcampus
PDF
ネットワークについて
なおき きしだ
PPTX
Salesforce1 アプリをGruntでデプロイ
Hiroyuki Endoh
PDF
JAWSUG初心者支部 AWSの勉強の仕方
Takuro Sasaki
はじめてのモバイルウェブアプリ 2
Taisuke Fukuno
WordPressサイトをスマホアプリにしちゃおう!
Ryu Shindo
スマホアプリ開発者のためのWeb api開発入門の入門
Kenyu Miura
スキスキIonic
Kon Yuichi
APIモック3分クッキング
政雄 金森
KLabのSI事業について
KLab株式会社
Hello, React!! まで導く Reactの基礎
iPride Co., Ltd.
Hacker's meetup boost_vol1発表資料_20150902
真一 藤川
パララックスでレスポンシブでJ query mobileなサイトのつくりかた
Shumpei Shiraishi
オフラインWebアプリケーションのつくりかた
Shumpei Shiraishi
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
yoshikawa_t
もっと良くなるHTMLアプリケーション設計と実装
Mitsue-Links
PWAがたぶんくる
Ryu Shindo
みなさんがHtml5をやらなくていい3つの理由
Masakazu Muraoka
テックブログのすゝめ -アウトプットで知識習得サイクルを回そう-
Shinya Mori (@mosuke5)
SendGrid Night in Fukuoka #1
Wataru Sato
PHP実践 ~外部APIを使って情報を取得する~
schoowebcampus
ネットワークについて
なおき きしだ
Salesforce1 アプリをGruntでデプロイ
Hiroyuki Endoh
JAWSUG初心者支部 AWSの勉強の仕方
Takuro Sasaki
Ad
Similar to ServiceWorkerでつくるWebの未来
(20)
PDF
Service worker が拓く mobile web の新しいかたち
Kinuko Yasuda
PPTX
PWA 総まとめ @ABC 2018 Spring
Ryu Shindo
PDF
Let's try to use Background sync
Hirata Tomoko
PPTX
Challenge PWA!! WordCamp Tokyo 2018
Ryu Shindo
PDF
Offline Drupal with progressive web app
Théodore Biadala
PPTX
Service Workerとは何者か
Ryu Shindo
PDF
PWAを使ってWebXRコンテンツをオフラインで動くようにする手順について
WheetTweet
PPTX
Challenge PWA!! TRY PWA4WP!
Ryu Shindo
PDF
Service Worker を知る
kasikasikasi
PPTX
wordcamp haneda 20190420 Apps Based on WordPress
Ryu Shindo
PDF
Service workerとwebプッシュ通知
zaru sakuraba
PDF
Service Workers
Takenori Nakagawa
PDF
進化する Web ~ Progressive Web Apps の実装と応用 ~
Microsoft Azure Japan
PDF
PWA for beginner#2
Masanari Hori
PPTX
Pwaを作ってみる(ejリクールトlt 2017/10/18)
Koki Natsume
PPTX
PWA has come!! / 2019/2/9 ABCD 浜松
Ryu Shindo
PDF
Service Workers Push API Hands-on
Takenori Nakagawa
PPTX
PWA A Go-Go !! @ABC2018A 20181013
Ryu Shindo
PPTX
PWA4WP の ServiceWorker
Ryu Shindo
PPTX
Cache 自由自在
Ryu Shindo
Service worker が拓く mobile web の新しいかたち
Kinuko Yasuda
PWA 総まとめ @ABC 2018 Spring
Ryu Shindo
Let's try to use Background sync
Hirata Tomoko
Challenge PWA!! WordCamp Tokyo 2018
Ryu Shindo
Offline Drupal with progressive web app
Théodore Biadala
Service Workerとは何者か
Ryu Shindo
PWAを使ってWebXRコンテンツをオフラインで動くようにする手順について
WheetTweet
Challenge PWA!! TRY PWA4WP!
Ryu Shindo
Service Worker を知る
kasikasikasi
wordcamp haneda 20190420 Apps Based on WordPress
Ryu Shindo
Service workerとwebプッシュ通知
zaru sakuraba
Service Workers
Takenori Nakagawa
進化する Web ~ Progressive Web Apps の実装と応用 ~
Microsoft Azure Japan
PWA for beginner#2
Masanari Hori
Pwaを作ってみる(ejリクールトlt 2017/10/18)
Koki Natsume
PWA has come!! / 2019/2/9 ABCD 浜松
Ryu Shindo
Service Workers Push API Hands-on
Takenori Nakagawa
PWA A Go-Go !! @ABC2018A 20181013
Ryu Shindo
PWA4WP の ServiceWorker
Ryu Shindo
Cache 自由自在
Ryu Shindo
Ad
ServiceWorkerでつくるWebの未来
1.
Create a Web future
with ServiceWorker
2.
トークテーマ ● PWAの現状 ● Offline
Web App ● DOMとの連携 ● バックグラウンド通信
3.
Yoshiki Kobayashi ferret engineer @ykyk1218 明日できることは、明日やる
4.
マーケティング・テクノロジー
5.
1.PWA の現状 もうすぐそこまで
6.
PWAが来るって言っているエンジニアは 今すぐ辞めろ 結局 PWA は来るの?来ないの?
7.
速報 本日(2018/04/02)のiOS11.3のリリースに伴い ServiceWorker対応済みのSafariもリリースされ ました! 参考 https://developer.apple.com/library/content/releasenotes/General/WhatsNewIn Safari/Articles/Safari_11_1.html
8.
ServiceWorkerできること › レスポンス動的書き換え › プッシュ通知 ›
オフラインキャッシュ › バックグラウンド通信
9.
2. Offline Web
app Cache storage
10.
オフラインキャッシュの仕組み Service Worker ServiceWorkerがローカルプロキシとして動く
11.
オフラインキャッシュの仕組み Service Worker キャッシュがあれば戻す
12.
オフライン対応したサイト https://ykyk1218.github.io/ こちらもどうぞ ServiceWokerでオフライン対応サイトをつくる
13.
2. DOMとの連携 click,mouseover,change...etc
14.
Service Worker イベント発火 postMessage
15.
window.onload = function()
{ target = document.querySelector(".next") if(target) { target.addEventListener('mousedown', function(event) { navigator.serviceWorker .controller .postMessage('/list.html') }) } } クライアント側js
16.
ServiceWorker側js self.addEventListener('message', function(event) { fetch(new
Request(event.data, {mode: 'no-cors'})) .then(function(response) { caches.open(CACHE_NAME).then(function(cache) { cache.put(event.data, response) }) }) })
17.
イベント発火でキャッシュ生成 https://ykyk1218.github.io/
18.
3. Background SyncEvent
19.
バックグラウンド通信の例 オフライン オンライン Indexed db など データ取得 syncイベント発火
20.
クライアント側js function sendMessageWithSync(data) { addIndexedDb(data).then(function(result)
{ return navigator.serviceWorker.ready.then(function(reg) { return reg.sync.register('send-talk') }) }) } //sendMessageWithSyncはsubmit時に呼ばれる //dataに入力データ //addIndexedDbはindexeddbに登録するメソッドを用意
21.
ServiceWorker側js self.addEventListener('sync', function(event) { if(event.tag
== 'send-talk') { event.waitUntil( getMessage().then(function(request) { return fetch(url,{method:'POST', body: JSON.stringify(data), credentials: 'include', mode: 'no-cors', headers: {'content-type': 'application/json'} }) }) .then(function() { return deleteMessage(1) }) ) } }) //getMessage: indexeddbからデータを取得する
22.
ServiceWorker側js self.addEventListener('sync', function(event) { if(event.tag
== 'send-talk') { event.waitUntil( getMessage().then(function(request) { return fetch(url,{method:'POST', body: JSON.stringify(data), credentials: 'include', mode: 'no-cors', headers: {'content-type': 'application/json'} }) }) .then(function() { return deleteMessage(1) }) ) } }) 実行が完了するまで待つ
23.
オフラインの入力内容をオンライン になったら送信する https://ykyk1218.github.io/
24.
デバッグつらい(T T)
25.
まとめ ServiceWorkerからキャッシュを取得すること でサイトを爆速にできる キャッシュやバックグラウンド通信によりオン ライン、オフラインの状態を意識させずに操作 ができる
Download