Algolia returns 的 Firebase 函数未定义
Firebase function for Algolia returns undefined
我正在关注有关如何使用 Firebase 实施 Algolia 的 Firebase 教程:https://firebase.google.com/docs/firestore/solutions/search
我目前停留在教程的索引部分,因为我有来自 firebase 云函数日志的错误。
这是云函数日志的输出
这是我写的代码
const functions = require('firebase-functions');
const algoliasearch = require("algoliasearch");
const ALGOLIA_ID = functions.config().algolia.app;
const ALGOLIA_ADMIN_KEY = functions.config().algolia.key;
const ALGOLIA_SEARCH_KEY = functions.config().algolia.search_key;
const ALGOLIA_INDEX_NAME = 'users';
const client = algoliasearch(ALGOLIA_ID, ALGOLIA_ADMIN_KEY);
// Update the search index every time a blog post is written.
exports.onUserCreated = functions.firestore.document('organisations/40R0LMA6ALZgF7KjHJMc/employees/{userId}').onCreate((snap, context) => {
// Get the note document
const user = snap.data();
// Add an 'objectID' field which Algolia requires
user.objectID = snap.id;
console.log(user.objectID)
// Write to the algolia index
const index = client.initIndex(ALGOLIA_INDEX_NAME);
return index.saveObject(user);
});
您似乎没有正确设置本示例中使用的不同环境变量。
如 doc 中所述,要在执行 const ALGOLIA_ID = functions.config().algolia.app;
时获取 algolia.app
环境变量的值,您需要预先将其值设置如下:
firebase functions:config:set algolia.app="THE_ALGOLIA_ID"
由于需要设置多个变量,可以一条指令设置,如下:
firebase functions:config:set algolia.app="THE_ALGOLIA_ID" algolia.key="THE_ALGOLIA_ADMIN_KEY" ...
如文档中所述,“要检查当前存储在项目环境配置中的内容,您可以在 CLI 中使用 firebase functions:config:get
”。
我正在关注有关如何使用 Firebase 实施 Algolia 的 Firebase 教程:https://firebase.google.com/docs/firestore/solutions/search
我目前停留在教程的索引部分,因为我有来自 firebase 云函数日志的错误。
这是云函数日志的输出
这是我写的代码
const functions = require('firebase-functions');
const algoliasearch = require("algoliasearch");
const ALGOLIA_ID = functions.config().algolia.app;
const ALGOLIA_ADMIN_KEY = functions.config().algolia.key;
const ALGOLIA_SEARCH_KEY = functions.config().algolia.search_key;
const ALGOLIA_INDEX_NAME = 'users';
const client = algoliasearch(ALGOLIA_ID, ALGOLIA_ADMIN_KEY);
// Update the search index every time a blog post is written.
exports.onUserCreated = functions.firestore.document('organisations/40R0LMA6ALZgF7KjHJMc/employees/{userId}').onCreate((snap, context) => {
// Get the note document
const user = snap.data();
// Add an 'objectID' field which Algolia requires
user.objectID = snap.id;
console.log(user.objectID)
// Write to the algolia index
const index = client.initIndex(ALGOLIA_INDEX_NAME);
return index.saveObject(user);
});
您似乎没有正确设置本示例中使用的不同环境变量。
如 doc 中所述,要在执行 const ALGOLIA_ID = functions.config().algolia.app;
时获取 algolia.app
环境变量的值,您需要预先将其值设置如下:
firebase functions:config:set algolia.app="THE_ALGOLIA_ID"
由于需要设置多个变量,可以一条指令设置,如下:
firebase functions:config:set algolia.app="THE_ALGOLIA_ID" algolia.key="THE_ALGOLIA_ADMIN_KEY" ...
如文档中所述,“要检查当前存储在项目环境配置中的内容,您可以在 CLI 中使用 firebase functions:config:get
”。