百度网盘客户端(java)版本

最近在Fedora34上跑官方的百度网盘老是工作不正常,看到百度网盘开放有API,于是自己写了一个基于java的百度客户端: https://github.com/Li-Xiang/jbaidunetdisk/releases/

程序支持字符用户交互界面,也支持命令行方式执行,可以方便通过脚本或后台方式执行。用户交互执行效果如下:
在这里插入图片描述

程序开发说明:
jbaidunetdisk调用的是百度开放平台提供的接口,是通过Apache Http Client库进行的调用。

要使用百度网盘的开放平台,首先需要申请接入(申请一个app),申请过程非常简单,打开https://pan.baidu.com/union/,点击右上角的"申请接入"按钮即可。接入类型选择"个人"。
在官方的"技术文档" -> “开发者须知” ->“接入流程” 有详细说明: https://pan.baidu.com/union/doc/0ksg0sbig

百度开放平台的授权方式采用的是OAuth2.0(开放授权), 访问授权是跟app关联的,首先根据AppKey,请求一个百度授权页面。请求格式是固定的,只需要client_id填入你的AppKey信息即可。
http://openapi.baidu.com/oauth/2.0/authorize?response_type=code&client_id=your_app_key&redirect_uri=oob&scope=basic,netdisk

浏览器打开授权URL,用户登录后确认后会获得授权码:
在这里插入图片描述
根据授权码就可以换取access_token和refresh_token:

{
  "expires_in": 2592000,
  "refresh_token": "122.128d42206face25fdb7f...L-ww.mqq94w",
  "access_token": "121.827379bdccf1fb019c36...-OCo8.cgd4yw",
  "session_secret": "",
  "session_key": "",
  "scope": "basic netdisk"
}

access_token的有效期是2592000秒,也就是30天,30天内你可以直接通过获取的access_token访问百度云盘,access_token过期之后,也不需要重新请求授权,只需要使用refresh_token刷新access_token,access_token又可以接续使用了,refresh_token有效期是10年,也就是获取授权后,10年内都不需要重新获取授权。剩下的就是通过Http Get/Post调用百度开放平台的接口。

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值