Это мой android код. Я хочу отправить токен на сервер node.js и проверить токен в node.js. Но я не знаю, как отправить токен на node.js ..
Я использую аутентификацию firebase и базу данных в реальном времени, поэтому мне нужен токен id для классификации информации о пользователе. Скажите, пожалуйста, лучше всего отправить токен на node.js
firebaseAuth.signInWithEmailAndPassword(email,pwd)
.addOnCompleteListener(MainActivity.this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
//login
if(task.isSuccessful()){
Toast.makeText(MainActivity.this, "Login Success", Toast.LENGTH_SHORT).show();
FirebaseUser mUser=FirebaseAuth.getInstance().getCurrentUser();
mUser.getIdToken(true)
.addOnCompleteListener(new OnCompleteListener<GetTokenResult>() {
@Override
public void onComplete(@NonNull Task<GetTokenResult> task) {
if(task.isSuccessful()){
String idToken=task.getResult().getToken();
//How to send the token to server
Log.d(TAG,"idToken send:"+idToken);
Toast.makeText(MainActivity.this, idToken, Toast.LENGTH_SHORT).show();
}else{
}
}
});
firebaseAuth.addAuthStateListener(firebaseAuthListener);
Это мой код промежуточного программного обеспечения node.js для токена проверки.
const { authCheck } = require('../user_info/firebase');
const user_infoRepository = require('../user_info/repository')
function firebaseAuth(req, res, next) {
let token = req.body.token;
authCheck(token)
.then(decodedToken => {
let uid=decodedToken.uid;
console.log(uid);
return user_infoRepository.uidFindOrCreate(decodedToken.uid)
})
.then(user => {
req.user = user[0]
next();
})
.catch(e => {
res.json(e)
})
}
exports.firebaseAuth = firebaseAuth;
var admin = require("firebase-admin");
function authCheck(token) {
return admin.auth().verifyIdToken(token)
};
// function userCheck(uid){
// return admin.auth().getUser(uid)
// }
exports.authCheck = authCheck;
// exports.userCheck=userCheck;