Firebaseノート Cloud Functionsによる動的コンテンツ配信とキャシュによるパフォーマンス改善

www.youtube.com

 

要約

  • rewriteによって指定リクエストパスパターンを関数に送信する
  • Cache-Controlヘッダーよってキャッシュ設定してパフォーマンス改善する

 

 Cloud Functionsによる動的コンテンツ配信の基本

 functions/index.js

f:id:yoko0180:20171023070209p:plain

firebase.json

f:id:yoko0180:20171023070254p:plain

 

キャッシュによるパフォーマンス改善

ヘッダー設定をする。単位は秒。

f:id:yoko0180:20171023081241p:plain

キャッシュが効くタイミングではパフォーマンスが改善されている。

f:id:yoko0180:20171023081324p:plain

 

 max-ageとs-maxageの図解

f:id:yoko0180:20171023081452p:plain

 

 テンプレートエンジンの利用とjson配信の例

ここでは

GitHub - tj/consolidate.js: Template engine consolidation library for node.js

というテンプレートエンジンを使っている。

f:id:yoko0180:20171023082155p:plain

f:id:yoko0180:20171023082211p:plain

データを取得して・・

f:id:yoko0180:20171023082222p:plain

ルートではテンプレートを使った応答。

/fact.jsonではjsonを応答。

f:id:yoko0180:20171023082250p:plain

ルートでstatic/index.htmlが応答しないよう削除している。

f:id:yoko0180:20171023082357p:plain

 

追記 Hostingでもヘッダー設定できる

デプロイ設定  |  Firebase