admin管理员组文章数量:1582936
源码地址: GitHub - zhonghang1993/baidu-netdisk: 百度企业网盘SDK
前言
【全网首发】最好用的百度企业网盘SDK,开箱即用。
- 支持多个企业网盘同时管理
一、使用例子
- 例子1:Spring boot项目【推荐】
- 例子2:spring项目
1-1 Spring boot项目
1-1-1 引入spring boot自动装配依赖
<dependency>
<groupId>io.github.zhonghang1993</groupId>
<artifactId>baidu-netdisk-cp-spring-boot-starter</artifactId>
<version>1.7.1</version>
</dependency>
1-1-2 配置文件
# appId
baidudisk.cp.disk.app-id=
# appName
baidudisk.cp.disk.app-name=
# appKey
baidudisk.cp.disk.app-key=
# secretKey
baidudisk.cp.disk.secret-key=
# signKey
baidudisk.cp.disk.sign-key=
# 授权回调地址
baidudisk.cp.disk.redirect-uri=
#【重点】如果不配置,则默认存储在内存中。配置实现StorageDaoI接口的类全量路径名;查看下文《元数据存储扩展性》
baidudisk.cp.disk.storage-rule=com.XX.XX.XX.service.impl.RedisStorage
# 上传文件的路径前缀
baidudisk.cp.disk.file-prefix=/bbs
# 分片大小(单位M),最大限制:普通用户4M,普通会员16M,超级会员32M
baidudisk.cp.disk.unit=32
1-1-3 使用
@Autowired
private BaiduNetDisk baiduNetDisk;
1-2 Spring 项目(ssm、ssh)
1-2-1 引入依赖
<dependency>
<groupId>io.github.zhonghang1993</groupId>
<artifactId>baidu-netdisk</artifactId>
<version>1.7.1</version>
</dependency>
1-2-2 构建
BaiduConfig baiduConfig = new BaiduConfig(appId,appName,appKey,secretKey,singKey,redirectUri,filePrefix,unit);
//【拿到操作所有接口的类】没有传自定义实现StorageDaoI,则使用默认的存储规则
BaiduNetDisk baiduNetDisk = new BaiduNetDisk(baiduConfig);
//BaiduNetDisk baiduNetDisk = new BaiduNetDisk(baiduConfig,storageDaoI);
二、 调用说明
2-1 service说明
//获取accessToken的类,获取二维码扫码地址、通过code鉴权
baiduNetDisk.getAccessTokenService();
//获取文件管理的类,文件的移动、拷贝、删除、列表搜索、文件详情、下载地址...
baiduNetDisk.getFileService();
//分片上传文件
baiduNetDisk.getSuperFileService();
//获取当前授权账号的企业信息
baiduNetDisk.getOrganizationInfoService();
//你基本上用不上,请求接口时,计算签名用的
baiduNetDisk.getStsService();
2-2 单网盘管理,多网盘管理说明
- 管理单个用户网盘,使用default开头的
- baiduNetDisk.getAccessTokenService().default***();
- baiduNetDisk.getFileService().default***();
- 管理多个用户的网盘,则使用
- baiduNetDisk.getFileService().***(*** ,Long cid);
cid是什么?cid每个授权用户的网盘唯一ID(企业空间ID),在获取公司信息中有。所以每次操作传cid即可
三、元数据存储扩展性
- 目前SDK给的默认规则是存储在内存中的,所以不建议生产使用
- 想把token存储在内存、存储在文件、存储在redis、存储数据库......?
实现抽象类 StorageDaoI 即可
3-1 示例:使用redis存储
请点击看模块中demo示例
- 分布式系统、或者集群建议存储在redis中
四、常见问题
4-1 如何同时管理多个用户的授权空间?
目前你就new多个BaiduNetDisk,虽然不优雅,但是可以解决问题。 ~~正在重构中~~
4-2 【解绑】如何清空授权信息?
//清除指定企业网盘
storageDaoI.clear(Long cid);
如果你觉得直接设置null无法处理你的业务场景,可以重写clear方法。
4-3 怎么显示打印日志?
在你的日志配置文件,扫描路径加上com.zhonghang.baidu就可以了
例子:如你使用的是logback.xml配置的:
<logger name="com.zhonghang.baidu" level="DEBUG"/>
版权声明:本文标题:百度企业网盘SDK 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1727902547a1137054.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论