Firebase Admin Java SDK 未执行任何操作
Firebase Admin Java SDK not doing any operation
我已经使用 this 指南
设置了 firebase admin SDK
所以我用下面的方式初始化它。
InputStream refreshToken = new ClassPathResource(CONFIG_FILE).getInputStream();
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredential(FirebaseCredentials.fromRefreshToken(refreshToken))
.setDatabaseUrl("https://<project-id>.firebaseio.com/")
.build();
FirebaseApp.initializeApp(options);
到目前为止我没有发现任何错误,一切似乎都很好。但是,我无法进行任何操作。调用方法什么都不做。例如:
FirebaseDatabase.getInstance()
.getReference()
.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//this callback is never called
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
或
class Pojo {
public Pojo(String name, String surname) {
this.name = name;
this.surname = surname;
}
String name;
String surname;
//omitted getters and setters
}
FirebaseDatabase.getInstance.getReference()
.push()
.setValue(new Pojo("Test", "Test"));
//this value is never set
看起来 skd 忽略了任何命令。有什么想法吗?
背景:我 运行 这是本地计算机上的 Web 应用程序 (spring)。
如果您使用服务帐户密钥 JSON 文件验证 SDK,如 Add Firebase to your app, you should use the fromCertificate()
method, not the fromRefreshToken()
方法中所述:
FileInputStream serviceAccount = new FileInputStream("path/to/serviceAccountKey.json");
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredential(FirebaseCredentials.fromCertificate(serviceAccount))
.setDatabaseUrl("https://<DATABASE_NAME>.firebaseio.com/")
.build();
FirebaseApp.initializeApp(options);
使用刷新令牌进行身份验证是一种高级用例,可能不是您想要使用的。
我已经使用 this 指南
设置了 firebase admin SDK所以我用下面的方式初始化它。
InputStream refreshToken = new ClassPathResource(CONFIG_FILE).getInputStream();
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredential(FirebaseCredentials.fromRefreshToken(refreshToken))
.setDatabaseUrl("https://<project-id>.firebaseio.com/")
.build();
FirebaseApp.initializeApp(options);
到目前为止我没有发现任何错误,一切似乎都很好。但是,我无法进行任何操作。调用方法什么都不做。例如:
FirebaseDatabase.getInstance()
.getReference()
.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//this callback is never called
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
或
class Pojo {
public Pojo(String name, String surname) {
this.name = name;
this.surname = surname;
}
String name;
String surname;
//omitted getters and setters
}
FirebaseDatabase.getInstance.getReference()
.push()
.setValue(new Pojo("Test", "Test"));
//this value is never set
看起来 skd 忽略了任何命令。有什么想法吗?
背景:我 运行 这是本地计算机上的 Web 应用程序 (spring)。
如果您使用服务帐户密钥 JSON 文件验证 SDK,如 Add Firebase to your app, you should use the fromCertificate()
method, not the fromRefreshToken()
方法中所述:
FileInputStream serviceAccount = new FileInputStream("path/to/serviceAccountKey.json");
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredential(FirebaseCredentials.fromCertificate(serviceAccount))
.setDatabaseUrl("https://<DATABASE_NAME>.firebaseio.com/")
.build();
FirebaseApp.initializeApp(options);
使用刷新令牌进行身份验证是一种高级用例,可能不是您想要使用的。