Javascript ';错误:内部';从react本机客户端本地运行firebase云功能时
我传递了所有关于以下问题的问题/答案:从react本机客户端本地调用firebase云函数。但是没有人回答我 我在用react-native@0.61.5并作出本地反应-firebase@5.6.0 问题是: 在我运行'firebase Service--only functions'之后,当我尝试使用函数时。使用FunctionSemulator('')或 函数。useFunctionsEmulator(“”)我得到以下错误 注意:当从firebase服务器调用My cloud函数时(删除产生错误的行代码时),该函数工作正常 这是我的密码: 云功能:Javascript ';错误:内部';从react本机客户端本地运行firebase云功能时,javascript,firebase,react-native,google-cloud-functions,firebase-tools,Javascript,Firebase,React Native,Google Cloud Functions,Firebase Tools,我传递了所有关于以下问题的问题/答案:从react本机客户端本地调用firebase云函数。但是没有人回答我 我在用react-native@0.61.5并作出本地反应-firebase@5.6.0 问题是: 在我运行'firebase Service--only functions'之后,当我尝试使用函数时。使用FunctionSemulator('')或 函数。useFunctionsEmulator(“”)我得到以下错误 注意:当从firebase服务器调用My cloud函数时(删除产
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
exports.addAdminRole = functions.https.onRequest((data, context) => {
return admin.auth().getUserByEmail(data.email).then(user => {
return admin.auth().setCustomUserClaims(user.uid, {
admin: true
});
}).then(() => {
return {
message: 'Admin has been added Successfuly!'
}
}).catch(err => {
return err;
});
});
反应本机(UI)
从“React”导入React
从“react native”导入{View,Text,TouchableHighlight}
从“react native firebase”导入firebase
const functions=firebase.functions()
//useFunctionsEmulator('http://localhost:5000“)控制台。错误(err))
}
render(){
返回(
添加管理员角色
)
}
}
您似乎在遵循一些过时的说明。根据上的Firebase文档,您需要:
完成此操作后,您可以在React代码中使用:
我不完全确定
react native firebase
是否支持useFunctionsEmulator
,因此,如果您正在使用该软件包,您可能需要查看它们的发行说明。默认情况下,firebase模拟器只响应本地主机的请求,以尝试添加“主机”:“0.0.0”
到您的firebase.json
文件:
"emulators": {
"functions": {
"port": 5001,
"host": "0.0.0.0"
},
}
此外,配置文件中的.useFunctionsEmulator()
应具有本地主机IP地址,而不是http://localhost
,示例:
firebase.functions().useFunctionsEmulator(“http://10.0.0.170:5001");代码>您必须删除“http”,因此它将:
firebase.functions().useEmulator('localhost', '5001')
谢谢我已经试过你的建议了,但仍然得到错误:内部。@SalimLyoussi:你明白了吗?
firebase.functions().useFunctionsEmulator("http://localhost:5001")
"emulators": {
"functions": {
"port": 5001,
"host": "0.0.0.0"
},
}
firebase.functions().useEmulator('localhost', '5001')