Angular + Firebase应用程序
在我的云函数中,我有下一个func:
export const getUserByEmail = functions.https.onRequest((request, response) => {
const email = request.body.email
admin.auth().getUserByEmail(email)
.then(user => {
response.send(user)
})
.catch(error => {
response.status(500).send(error)
})
})
在Angular Service中,我想称之为:
getUserByEmail(email) {
const getUserData = this.fireFunction.httpsCallable('getUserByEmail')
return getUserData({ request.body.email: email })
}
这是正确的方式,它是如何工作的?或者我应该如何调用带参数的函数?
1条答案
按热度按时间mm5n2pyu1#
你实际上是把HTTP Cloud Functions和Callable Cloud Functions弄混了。
您的Cloud Function代码对应的是HTTP(
functions.https.onRequest(...)
),但您的前端代码调用的是Callable(const getUserData = this.fireFunction.httpsCallable('getUserByEmail')
)。你应该调整一个或另一个,最有可能的是调整你的云函数到一个可调用的,沿着下面的路线: