BOX API - 允许外部用户选择其文件,然后像 Dropbox 选择器一样以编程方式下载所选文件



你好,我正在实现Box API, 我想让外部用户选择其现有文件,然后想在我的应用程序中下载这些文件。

为此,我有企业应用程序,并且正在使用JWT授权。

我能够使用此代码生成访问令牌

JWTEncryptionPreferences jwtPreferences = new JWTEncryptionPreferences();
jwtPreferences.setPublicKeyID("xxxx");
jwtPreferences.setPrivateKeyPassword("xxx");
jwtPreferences.setPrivateKey("-----BEGIN ENCRYPTED PRIVATE KEY-----nxxxxxxn-----END ENCRYPTED PRIVATE KEY-----n");
jwtPreferences.setEncryptionAlgorithm(EncryptionAlgorithm.RSA_SHA_256);
BoxConfig boxConfig = new BoxConfig("xxxx", "xxxx", "xxx", jwtPreferences);
try {
BoxDeveloperEditionAPIConnection api = BoxDeveloperEditionAPIConnection.getAppEnterpriseConnection(boxConfig);
LOG.info("token --" + api.getAccessToken());
return api;
} catch (BoxAPIException e) {
}

然后,我将此令牌发送到前端并使用该令牌打开内容选取器。代码与以下链接相同

https://developer.box.com/docs/box-content-picker#section-sample-html

现在我可以像演示一样打开选择器。但它特定于一个帐户。我想为 Box 的外部用户实现相同的功能。

这可能吗?

我在这里缺少什么?

好的。我为此找到了解决方案。如果可以帮助任何人,请发布此内容。

我发现为现有应用程序用户选择JWT不是一个好的选择。

所以我必须选择OAuth2来验证外部用户

从文档:

在以下情况下,何时使用 选择 OAuth 2 作为身份验证方法:

  • 您只与拥有现有 Box 帐户的用户合作。

相关内容

最新更新