BOX API - 让外部用户 select 他们的文件,然后像 dropbox 选择器一样以编程方式下载 selected 文件
BOX API - Let external user select their files and then download selected files programmatically like dropbox chooser
您好,我正在实施 Box API,
我想让外部用户 select 他们现有的文件,然后想在我的应用程序中下载这些文件。
为此我有企业应用程序并且我正在使用 JWT 授权。
我可以使用此代码生成访问令牌
JWTEncryptionPreferences jwtPreferences = new JWTEncryptionPreferences();
jwtPreferences.setPublicKeyID("xxxx");
jwtPreferences.setPrivateKeyPassword("xxx");
jwtPreferences.setPrivateKey("-----BEGIN ENCRYPTED PRIVATE KEY-----\nxxxxxx\n-----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) {
}
然后我将此令牌发送到前端并使用该令牌打开内容选取器。代码同下面link
https://developer.box.com/docs/box-content-picker#section-sample-html
现在我可以像演示一样打开选择器了。但它是特定于一个帐户的。我想为 Box 的外部用户实现同样的功能。
这可能吗?
我在这里缺少什么?
好的。我找到了解决方案。如果它可以帮助任何人,请发布它。
我发现为现有应用用户选择 JWT
并不是一个好的选择。
所以我必须选择OAuth2
来验证外部用户
来自doc:
When to Use Choose OAuth 2 as your authentication method if:
- You are only working with users that have existing Box accounts.
您好,我正在实施 Box API, 我想让外部用户 select 他们现有的文件,然后想在我的应用程序中下载这些文件。
为此我有企业应用程序并且我正在使用 JWT 授权。
我可以使用此代码生成访问令牌
JWTEncryptionPreferences jwtPreferences = new JWTEncryptionPreferences();
jwtPreferences.setPublicKeyID("xxxx");
jwtPreferences.setPrivateKeyPassword("xxx");
jwtPreferences.setPrivateKey("-----BEGIN ENCRYPTED PRIVATE KEY-----\nxxxxxx\n-----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) {
}
然后我将此令牌发送到前端并使用该令牌打开内容选取器。代码同下面link
https://developer.box.com/docs/box-content-picker#section-sample-html
现在我可以像演示一样打开选择器了。但它是特定于一个帐户的。我想为 Box 的外部用户实现同样的功能。
这可能吗?
我在这里缺少什么?
好的。我找到了解决方案。如果它可以帮助任何人,请发布它。
我发现为现有应用用户选择 JWT
并不是一个好的选择。
所以我必须选择OAuth2
来验证外部用户
来自doc:
When to Use Choose OAuth 2 as your authentication method if:
- You are only working with users that have existing Box accounts.