gpt4 book ai didi

java - 如何读取 Google App Engine (JAVA) 中的文件

转载 作者:行者123 更新时间:2023-11-30 07:15:08 25 4
gpt4 key购买 nike

我必须向 Firebase 授权我的服务器使用 Firebase SDK。但不幸的是我无法读取credentials.json 文件。我已将 service.json 文件放入 WEB-INF 文件夹中。

我已将其添加到我的 appengine-web.xml 文件中:

<resource-files>
<include path="/service.json"/>
</resource-files>

我正在尝试使用以下代码读取文件:

FirebaseOptions options = new FirebaseOptions.Builder().setServiceAccount(ServletServletContext.class.getResourceAsStream("/WEB-INF/service.json"))

但是当我尝试读取该文件时,我收到 NullPointerException。

这是我的整个类(class):

@Api(
name = "myApi",
version = "v1",
namespace = @ApiNamespace(
ownerDomain = "backend",
ownerName = "backend",
packagePath=""
)
)
public class MyEndpoint {

private static final Logger log = Logger.getLogger(MyEndpoint.class.getName());
private String uid;

@ApiMethod(name = "signup")
public MyBean signup(@Named("token")String token)
{
uid = "empty";
uid = "init";

log.info(new File(getClass().getResource("/WEB-INF/service.json").toString()).exists()+"");

FirebaseOptions options = new FirebaseOptions.Builder()
.setServiceAccount(getClass().getResourceAsStream("/WEB-INF/service.json"))
.setDatabaseUrl("url")
.build();

FirebaseApp.initializeApp(options);
uid = "initialized";

log.severe("initialized");
FirebaseAuth.getInstance().verifyIdToken(token)
.addOnSuccessListener(new OnSuccessListener<FirebaseToken>() {

@Override
public void onSuccess(FirebaseToken decodedToken) {uid = decodedToken.getUid();
}
});

MyBean b = new MyBean();
if(!uid.equals(""))
b.setData(uid);
// else
// b.setData("failed");

return b;
}

}

预先感谢您的帮助。

最佳答案

你可以使用

this.getClass().getResourceAsStream("/WEB-INF/service.json");

关于java - 如何读取 Google App Engine (JAVA) 中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38542262/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com