我在https://github.com/box/box-java-sdk-v2查看 Box 的 Java SDK
我看到了一个示例片段
String url = "https://www.box.com/api/oauth2/authorize?response_type=code&client_id=" + key + "&redirect_uri=http%3A//localhost%3A" + PORT;
try {
Desktop.getDesktop().browse(java.net.URI.create(url));
code = getCode();
System.out.println("code: " + code);
} catch (IOException e) {
e.printStackTrace();
}
“code”用于创建“BoxOAuthToken”
这很好用!
我的问题:必须为每个请求生成“代码”。这涉及启动浏览器并让用户对 Box 进行身份验证。但是如果我想在 Web 服务器上运行它并公开一个 Web 服务呢?我想让用户从他们的浏览器进行身份验证并让 Web 服务器调用
BoxFolder boxFolder= client.getFoldersManager().getFolder("0",null);
ArrayList<BoxTypedObject> folderEntries = boxFolder.getItemCollection().getEntries();
并让它将结果作为 JSON 返回给客户端/用户。
关于如何实现这一点的任何想法?
目前,我的 Web 服务器正在使用 Apache Commons HTTP 直接调用 API(例如 api.box.com/2.0/folders/0),并使用“Authorization”标头传递令牌,这很有效。但我想知道我是否可以使用 SDK。