Topic

firebase functions

A collection of 5 issues

コメントが投稿されたらslackに通知する

ブログのコメントはfirebaseに登録しています。 firestoreに登録されたタイミングで、slackのチャネルに投稿する処理を作りたいと思います。 firestore の登録トリガ firebase functionsでは、接続されているfirestoreの登録・更新・削除のイベントトリガで処理を実行することができます。 ブログ記事にコメントが投稿されたらSlackに通知されるような関数を登録したいと思います。 ライブラリに axios を追加 functionsで通信を行うので、使い慣れたaxiosを依存関係に追加します。 cd functions yarn add axios トリガの設定 トリガのウォッチ方法については、firebaseの公式ドキュメントに詳しく書いてありました。 → Cloud Firestore トリガー ブログのコメントは posts/postId/comments/commentIdという構造で保存しているので、このパスに書き込まれたらトリガされるようにします。 postIdは記事の ID、
3 min read

functions に json がアップできない罠

firebase functionsを利用するに当たり、サービスアカウント情報を環境変数ではなくjsonファイルで保持していました。 環境変数でやれ、というのは重々承知の上でございます。 { "type": "service_account", "project_id": "nekoha-blog" } それを firebase の初期化関数の中で読み出すコード。 serviceAccount = require('./serviceAccountKey.json') ローカルではもちろん問題なく動くのですが、デプロイすると読めない事象が。 拡張子が json だとだめ? 拡張子が.jsonだとデプロイ対象にならないらしい。 .jsファイルは持っていってくれるので JSON ファイルを書き換え。 exports.default = { type: 'service_account', project_id: 'nekoha-blog'
1 min read

ブログをNuxt.jsで実装したのでメモを残す

ブログを Hexo で運用していましたが、勉強も兼ねて Nuxt.js で書き起こしました。 Hexo時代の資産も活かすためにMarkdownのままかけるようにしています。 いろいろハマったポイントもあったので、実装メモ。 目次 * 記事は MarkDown で書きたい * Nuxt.js に MarkDown を読み込む * md ファイルのパスに合わせて Nuxt のパスも設定する * 環境変数を使いこなす?読み込んだファイル情報を vue に持っていく * md のアンカでも Vue ルータを利用する * sitemap.xml の作成(動的パスへの対処) * Google Ads (@nuxtjs/google-adsense) * Google Analytics (@nuxtjs/google-analytics) * ブログにコメント機能を追加する * functions に json がアップできない罠 * onRequest と
1 min read

firebase functionsをローカルでテスト

前回:firebase functions でサーバレス APIの続き firebase functionsでは、デプロイしなくてもローカル環境でテストが可能です(できないテストもあります)。 せっかくなのでオリジナルのプログラムを作って、ローカル環境で動作確認をしてみます。 おみくじ API を作る とりあえず動けばいいのでガバガバの仕様。 * GET で API が呼ばれる * JSON 形式で大吉〜大凶を返す これだけ。レアくじの出現率なんか気にしない。平等です。 おみくじ Function を作成 const functions = require('firebase-functions'); // cors許可のためインポート const cors = require('cors')({ origin: true }); const kuji = ["大吉", "中吉&
1 min read

firebase functionsでサーバレスAPI

hello firebase functions firebase で functions。 functionsはfirebaseのサービスの中で、Node.jsによる関数を実行できるすごいやつです。 サーバサイドプログラムを動かすのに自分でサーバを用意する必要がないんです! いままでherokuなどを使っていましたが、無料の spark 枠でも使えるので、簡単な API を作って動かしてみました。 firebase-tools のインストール 公式サイトに書いてあるとおりです。 npmかyarnを使ってグローバルにインストールします。 npm install -g firebase-tools functions を使う準備 使いたいプロジェクトで以下を実行。 ウィザードに従って、JavaScript か TypeScript か選べぇ? firebase init functions これで空のfunctionsディレクトリが作成される。 関数の作成 functionsディレクトリが作成されたら、直下にindex
1 min read

Subscribe to 猫好きが猫以外のことも書く

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe