百度云PCS调试过程

其实整个调试过程按照百度的开发指南做就可以了,只是现在百度云平台又改版,而开发文档在一些地方没有同步更新。所以写下我的调试过程供大家参考。

1、当然首先是注册成为百度开发者

2、任意创建一个应用,我选择的是创建一个轻应用,因为有模板,几步就创建好了。

3、创建完成以后在“开发者服务管理”中就可以看到你创建的应用了,然后点击进入刚创建的应用的管理页面,选择其他API

 

这里可以看到"PCS API" 项,当前状态应该是关闭的,这个需要申请提交百度进行审核才能开通,这点比较坑爹。不过还好我申请几天后就开通了,贴吧里有人说申请了1个多月没反应。

这里可以直接点"PCS API" 就可以打开PCS的开发文档,http://developer.baidu.com/wiki/index.php?title=docs/pcs。里面有一节是“开通PCS API权限”,可以参考。

 

4、PCS API权限申请通过以后就可以进行“获取Access_Token”了,有几种方式具体可以参考开发文档。我选择的是“Device授权”方式。因为我是在我的linux虚拟机上测试,完全是一个client方式。具体说明开发文档写得比较全,在浏览器中访问该地址:

https://openapi.baidu.com/oauth/2.0/device/code?client_id=Va5yQRHlA4Fq4eR3LT0vuXV4&response_type=device_code&scope=basic,netdisk

其中client_id为“开发者服务管理”页面的“API Key”。成功后会返回一段json:

{
     "device_code":"a82hjs723h72h3a82hjs723h72h3vb",
     "user_code":"8sjiae3p",
     "verification_url":"https:\/\/openapi.baidu.com\/oauth\/2\.0\/device",
     "qrcode_url":"http:\/\/openapi.baidu.com\/device\/qrcode\/6c6a8afee394f99e55eb25858\/2c885vjk",
     "expires_in":1800,
     "interval":5
}

我们需要用的就是这个 “device_code”、"user_code",打开http://openapi.baidu.com/device,登录想要使用的百度网盘账号,填写user_code,进行授权。完成以后再访问

https://openapi.baidu.com/oauth/2.0/token?
grant_type=device_token&
code=ANXxSNjwQDugOnqeikRMu2bKaXCdlLxn&
client_id=Va5yQRHlA4Fq4eR3LT0vuXV4&
client_secret=0rDSjzQ20XUj5itV7WRtznPQSzr5pVw2

这里的code就是device_code。这一次就拿到真正需要的access_token了:

{
    "access_token": "1.a6b7dbd428f731035f771b8d15063f61.86400.1292922000-2346678-124328",
    "expires_in": 86400,
    "refresh_token": "2.385d55f8615fdfd9edb7c4b5ebdc3e39.604800.1293440400-2346678-124328",
    "scope": "basic email",
    "session_key": "ANXxSNjwQDugf8615OnqeikRMu2bKaXCdlLxn",
    "session_secret": "248APxvxjCZ0VEC43EYrvxqaK4oZExMB",
}

 

 

 

5、由于我是在虚拟机调试,使用curl工具发起https请求,详细注解请参考:

 

获取空间配合信息:

curl  "https://pcs.baidu.com/rest/2.0/pcs/quota?method=info&access_token=1.a6b7dbd428f731035f771b8d15063f61.86400.1292922000-2346678-124328"

返回:

{"quota":2850784542720,"used":6715600798,"request_id":2655147104}

 

上传文件:

curl -F "action=upload" -F "filename=@test.txt" "https://pcs.baidu.com/rest/2.0/pcs/file?method=upload&path=%2Fapps%2Fuser_data%2ftest.txt&access_token=1.a6b7dbd428f731035f771b8d15063f61.86400.1292922000-2346678-124328"

结果:

请注意,这里的path是我遇到的最大的问题,开始的尝试都是path=%2Fapps,返回{"error_code":31064,"error_msg":"file is not authorized","request_id":3760805529}。后来才知道应用只能访问下面一层的user_data目录,这里的user_data应该是在申请开通PCS API权限的时候填写的。

 

查看上传的文件:

curl  "https://pcs.baidu.com/rest/2.0/pcs/file?method=list&access_token=1.a6b7dbd428f731035f771b8d15063f61.86400.1292922000-2346678-124328&path=%2Fapps%2Fuser_data"

至此整个过程基本上就跑通了。

 

转载于:https://www.cnblogs.com/leo-blog/p/3591659.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值