Javascript 具有多个参数的Firebase onCall函数
如何向特定的云函数发送两个字符串值Javascript 具有多个参数的Firebase onCall函数,javascript,node.js,firebase,google-cloud-functions,Javascript,Node.js,Firebase,Google Cloud Functions,如何向特定的云函数发送两个字符串值 ({text: uid}) //ex psuedo {text: uid, text: password} 下面是如何将一个字符串发送到onCall函数的示例 ({text: uid}) //ex psuedo {text: uid, text: password} index.jsonCall()云函数 exports.updateUserPassword = functions.https.onCall((data, context) => {
({text: uid}) //ex psuedo {text: uid, text: password}
下面是如何将一个字符串发送到onCall函数的示例
({text: uid}) //ex psuedo {text: uid, text: password}
index.jsonCall()云函数
exports.updateUserPassword = functions.https.onCall((data, context) => {
const uid = data.text;
});
var updateUserPassword = firebase.functions().httpsCallable('updateUserPassword ');
updateUserPassword({text: uid}).then(function(result) {
var userProperties = result.data.userData;
var successfulPasswordChange = userProperties.uid;
})
项目根目录中的authentication.js(调用onCall云函数)
如何实现发送和接收第二个字符串值的方法
假设需要在调用函数中进行修改
({text: uid}) //ex psuedo {text: uid, text: password}
以及如何在onCall()函数中使用
var uid = data.text;
var password = data.text;
我认为在函数中可以发送什么以及该对象的外观方面存在一些混淆 您发送的任何数据都将在一个对象中,您不受
数据的约束。text
您可以将任何JSON对象作为数据
所以你的例子是:
var myData = {
uid: "12345",
newPassword: "one2three4",
favoriteColor: "blue"
}
updateUserPassword(myData).then(function(result) {
// ...
})
然后在您的函数中:
exports.updatePassword = functions.https.onCall((data, context) => {
var newPassword = data.newPassword;
var uid = data.uid;
var favoriteColor = data.favoriteColor;
// ... do whatever
});
其他需要注意的重要事项
const UID=context.auth.UID代码>
你试过你的建议了吗?看起来会有用的。如果不是,请发布不起作用的确切代码,以及调试信息。代码工作正常。我只是不知道如何在调用函数中添加两个字符串元素,或者如何在onCall()函数中正确分配它们。在发布之前,你应该先尝试一下你的想法。然后,如果它不起作用,发布什么不起作用,以及调试细节。我真的很想帮助你,但首先我需要了解你到底被困在哪里。因为你听起来没有被卡住。看来你知道自己在做什么。我想了解您编写的代码中有什么地方没有按照您所期望的方式工作。Dennis感谢您的输入。更改密码的目的是在不发送电子邮件的情况下进行自定义。