Javascript Can';t使用my Firebase函数从Firestore读取数据
我编写了一个简单的函数来学习如何从firestore读取数据。index.js文件如下所示:Javascript Can';t使用my Firebase函数从Firestore读取数据,javascript,firebase,google-cloud-firestore,google-cloud-functions,Javascript,Firebase,Google Cloud Firestore,Google Cloud Functions,我编写了一个简单的函数来学习如何从firestore读取数据。index.js文件如下所示: const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(functions.config().firebase); const express = require('express'); const cors = require('cor
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
const express = require('express');
const cors = require('cors');
const app = express();
// Automatically allow cross-origin requests
app.use(cors({ origin: true }));
// GET
app.get('/', (request, response) => {
var db = admin.firestore();
db.collection('users').doc('vUuMvkP03J2hMryAm9ok').get().then(snapshot => {
response.send(snapshot.username);
}).catch(reason => {
response.send(reason);
});
});
exports.myFunction = functions.https.onRequest(app);
在GET
请求中,我试图读取存储在users
集合下的文档,并发回username
字段。我的数据库如下所示:
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
const express = require('express');
const cors = require('cors');
const app = express();
// Automatically allow cross-origin requests
app.use(cors({ origin: true }));
// GET
app.get('/', (request, response) => {
var db = admin.firestore();
db.collection('users').doc('vUuMvkP03J2hMryAm9ok').get().then(snapshot => {
response.send(snapshot.username);
}).catch(reason => {
response.send(reason);
});
});
exports.myFunction = functions.https.onRequest(app);
当我转到函数的URL时,我得到一个空页面,上面什么也没有。也没有明显的错误。我到底做错了什么?firestore响应的数据位于
snapshot.data()
如果您将其添加到回调中,您应该会很好
response.send(snapshot.data().username);
快照上还有其他属性,如
snapshot.id
,在您的示例中,它将为您提供vUuMvkP03J2hMryAm9ok
。firestore响应的数据位于snapshot.data()
如果您将其添加到回调中,您应该会很好
response.send(snapshot.data().username);
快照上还有其他属性,如
snapshot.id
,在您的示例中为您提供vumvkp03j2hmryam9ok
。您可以访问快照的数据属性中的用户名snapshot.data().username
您可以访问快照的数据属性中的用户名snapshot.data().username