OLD | NEW |
1 function handleString(event) { | 1 function handleString(event) { |
2 event.respondWith(new Response('Test string')); | 2 event.respondWith(new Response('Test string')); |
3 } | 3 } |
4 | 4 |
5 function handleBlob(event) { | 5 function handleBlob(event) { |
6 event.respondWith(new Response(new Blob(['Test blob']))); | 6 event.respondWith(new Response(new Blob(['Test blob']))); |
7 } | 7 } |
8 | 8 |
9 function handleReferrer(event) { | 9 function handleReferrer(event) { |
10 event.respondWith(new Response(new Blob( | 10 event.respondWith(new Response(new Blob( |
11 ['Referrer: ' + event.request.referrer]))); | 11 ['Referrer: ' + event.request.referrer]))); |
12 } | 12 } |
13 | 13 |
| 14 function handleAccept(event) { |
| 15 event.respondWith(new Response(new Blob( |
| 16 ['Accept: ' + event.request.headers.get('accept')]))); |
| 17 } |
| 18 |
14 function handleClientId(event) { | 19 function handleClientId(event) { |
15 var body; | 20 var body; |
16 if (event.clientId !== null) { | 21 if (event.clientId !== null) { |
17 body = 'Client ID Found: ' + event.clientId; | 22 body = 'Client ID Found: ' + event.clientId; |
18 } else { | 23 } else { |
19 body = 'Client ID Not Found'; | 24 body = 'Client ID Not Found'; |
20 } | 25 } |
21 event.respondWith(new Response(body)); | 26 event.respondWith(new Response(body)); |
22 } | 27 } |
23 | 28 |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
69 'bodyUsed: ' + lastResponseForUsedCheck.bodyUsed)); | 74 'bodyUsed: ' + lastResponseForUsedCheck.bodyUsed)); |
70 } | 75 } |
71 } | 76 } |
72 | 77 |
73 self.addEventListener('fetch', function(event) { | 78 self.addEventListener('fetch', function(event) { |
74 var url = event.request.url; | 79 var url = event.request.url; |
75 var handlers = [ | 80 var handlers = [ |
76 { pattern: '?string', fn: handleString }, | 81 { pattern: '?string', fn: handleString }, |
77 { pattern: '?blob', fn: handleBlob }, | 82 { pattern: '?blob', fn: handleBlob }, |
78 { pattern: '?referrer', fn: handleReferrer }, | 83 { pattern: '?referrer', fn: handleReferrer }, |
| 84 { pattern: '?accept', fn: handleAccept }, |
79 { pattern: '?clientId', fn: handleClientId }, | 85 { pattern: '?clientId', fn: handleClientId }, |
80 { pattern: '?ignore', fn: function() {} }, | 86 { pattern: '?ignore', fn: function() {} }, |
81 { pattern: '?null', fn: handleNullBody }, | 87 { pattern: '?null', fn: handleNullBody }, |
82 { pattern: '?fetch', fn: handleFetch }, | 88 { pattern: '?fetch', fn: handleFetch }, |
83 { pattern: '?form-post', fn: handleFormPost }, | 89 { pattern: '?form-post', fn: handleFormPost }, |
84 { pattern: '?multiple-respond-with', fn: handleMultipleRespondWith }, | 90 { pattern: '?multiple-respond-with', fn: handleMultipleRespondWith }, |
85 { pattern: '?used-check', fn: handleUsedCheck } | 91 { pattern: '?used-check', fn: handleUsedCheck } |
86 ]; | 92 ]; |
87 | 93 |
88 var handler = null; | 94 var handler = null; |
89 for (var i = 0; i < handlers.length; ++i) { | 95 for (var i = 0; i < handlers.length; ++i) { |
90 if (url.indexOf(handlers[i].pattern) != -1) { | 96 if (url.indexOf(handlers[i].pattern) != -1) { |
91 handler = handlers[i]; | 97 handler = handlers[i]; |
92 break; | 98 break; |
93 } | 99 } |
94 } | 100 } |
95 | 101 |
96 if (handler) { | 102 if (handler) { |
97 handler.fn(event); | 103 handler.fn(event); |
98 } else { | 104 } else { |
99 event.respondWith(new Response(new Blob( | 105 event.respondWith(new Response(new Blob( |
100 ['Service Worker got an unexpected request: ' + url]))); | 106 ['Service Worker got an unexpected request: ' + url]))); |
101 } | 107 } |
102 }); | 108 }); |
OLD | NEW |