前提・実現したいこと
firestoreとalgoliaを連携させてfirestoreないの記事のコレクションにて、全文検索の機能を実装しようとしています。
https://qrunch.net/@oSsAl6sFdZnihjYb/entries/ldKT8e2KxwlUDnDz
上記サイトや公式ドキュメントなどを参考に実装を目指したのですが、
deployする際に下記のようなエラーが発生してしまいます。
発生している問題・エラーメッセージ
i functions: preparing functions directory for uploading... Error: Error occurred while parsing your function triggers. AlgoliaSearchError: Please provide an application ID. Usage: algoliasearch(applicationID, apiKey, opts)
該当のソースコード
functions内のindex.tsのコードは以下のようになっております。
import functions = require('firebase-functions') import admin = require('firebase-admin') admin.initializeApp(functions.config().firebase) import algoliasearch = require('algoliasearch') const ALGOLIA_ID = functions.config().algolia.app_id const ALGOLIA_ADMIN_KEY = functions.config().algolia.api_key const ALGOLIA_SEARCH_KEY = functions.config().algolia.search_key const ALGOLIA_INDEX_NAME = 'Articles' const client = algoliasearch(ALGOLIA_ID, ALGOLIA_ADMIN_KEY) exports.indexArticle = functions.firestore.document('Articles/{ArticleId}').onCreate((snap, context) => { const data = snap.data() const objectID = context.params.id const index = client.initIndex(ALGOLIA_INDEX_NAME) return index.saveObject({ objectID, ...data }) })
試したこと
環境変数の確認もしたのですが、
$ firebase functions:config:get { "algolia": { "app_id": "自分のApplication ID", "api_key": "自分のAdmin API Key", "search_key": "自分のSearch-Only API Key" } }
の形でalgoliaのダッシュボードにあるapplicationID, Admin API Key, Search-Only API Keyが入っていることが確認できました。
functionsのディレクトリにて
$ npm i --save algoliasearch
や
$ npm install firebase-admin@latest firebase-functions@latest
の実行も改めてしてみましたが、特に改善は見られませんでした。
非常に初歩的な部分かもしれないのですが、助けていただけると幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/12 09:46