素不相识。 我正在使用自定义的现有后端(Spring Boot)为我的移动应用程序实现Firebase身份验证。 我通过在移动应用程序中使用firebase在Facebook中成功验证=>想要将用户信息存储在我的后端数据库(不是firebase)中。
坚持调试令牌验证错误。
令牌验证 - 与google doc中的几乎相同:
try {
FirebaseToken decodedToken = Tasks.await(
FirebaseAuth.getInstance().verifyIdToken(info.getToken()));
} catch (ExecutionException | InterruptedException | IllegalArgumentException e) {
logger.error(e.getMessage());
}
收到错误:java.lang.IllegalArgumentException
并且找不到/调试导致它的原因。
相关 - firebase配置:
@Configuration
public class FirebaseConfig {
private final static Logger logger = LogManager.getLogger(FirebaseConfig.class.getName());
@Value("classpath:firebase_config.json")
private Resource firebase_config;
@PostConstruct
public void init() throws IOException {
FileInputStream serviceAccount = new FileInputStream(firebase_config.getFile());
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredential(FirebaseCredentials.fromCertificate(serviceAccount))
.setDatabaseUrl("https://******-81233.firebaseio.com")
.build();
FirebaseApp.initializeApp(options);
logger.info("Firebase init done");
}
}
更新 加入:
FirebaseAuth.getInstance().verifyIdToken(info.getToken()).addOnFailureListener(e -> {
System.err.println("Error verifying token: " + e.getMessage());
});
我得到的错误只是null
,而不是说它的起源。
答案 0 :(得分:-2)
构建发布APK版本。部署并重试。哈希将有所不同,以便它可能会有所帮助。