小程序接入
更新时间: 2022-04-18
本步骤主要描述如何在网盘创建一个小程序。
创建小程序应用
在小程序接入前,您需要首先创建小程序应用,流程如下:
1. 在百度智能小程序平台完成注册
点击【入驻申请】->【登录注册】->【选择主体类型】->【填写资料】-> 提交资料,等待资质认证审核(2个工作日完成)。
详细指导您可参考 【智能小程序注册指导文档】 。
2. 创建百度智能小程序
认证审核通过后,您可 创建智能小程序 ,填写智能小程序名称、简介、标签、上传头像并选择服务范围等信息。
3. 获取小程序的 AppID
小程序创建完成后,登录 智能小程序开发者后台 。 打开【智能小程序首页】-【设置】-【开发设置】,既可获取到智能小程序的 AppID。
4. 在百度网盘开放平台创建小程序类型的应用
创建并填写您的小程序AppID,具体步骤请参见 【创建应用文档】 。
小程序接入授权
创建好小程序应用后,如果您的小程序需要使用网盘的能力(如,网盘上传、下载、文件分享等),则需要完成以下接入流程,实现用户授权小程序,获取到 Access Token 凭证。小程序拿着 Access Token 凭证去调用百度网盘公开API,即可实现您需要的功能。
备注:如果只使用小程序的基础API,则您可以只需要创建完成小程序应用即可,无需此步。
接入流程如下:
1.发送鉴权邮件
邮件格式如下:
预估收益:***w pv2.向用户发起授权请求
(1)小程序调用 SwanCore 的 api (swan.authorize) 传入网盘 scope 参数,向用户发起授权请求,获取访问用户网盘数据权限。调用后,会立刻弹窗询问用户是否同意授权智能小程序使用某项功能或获取用户的某些数据,但不会实际调用对应接口。如果用户之前已经同意授权,则不会出现弹窗,直接返回成功。
(3)关于scope说明
网盘小程序和百度智能小程序使用同一框架。为了对小程序的权限进行控制,网盘自定了一些scope,如下:
scope(1) 小程序调用 swan.getLoginCode 取得授权码 Code。
(2) swan.getLoginCode 参数及错误码更多说明
可参考 【智能小程序-开放接口-swan.getLoginCode】 。
4.通过 授权码 Code 换取 Access Token
(1) 小程序调用 code2token 接口换取 Access Token。
(2) code2token 接口由小程序开发者server端自行实现,内部调用
http://openapi.baidu.com/nalogin/code2token
。
(3) 接口参数
必选(M)/可选(O)至此,您的小程序已经获取到一个 Access Token,该 Access Token 是用户同意授权的凭证。小程序需要依赖 Access Token 凭证调用百度网盘公开API,实现访问用户信息以及授权资源。
相关代码示例
1.swan.authorize 示例
1、请求
curl -X POST "http://openapi.baidu.com/nalogin/code2token" -d 'client_id=123&sk=456&code=7a8a7941ec877d25af7be341e04abac7'
2、响应
"openid": "mE1X4nXnGw4IgKMmYXpHX_IYQe",
"session_key": "5e6a9eac2dfd043bfc91c3e905fa4821",
"token": {
"expires_in": 2592000,
"refresh_token": "22.8349ff7613add1a5ec58b8d28ec750d0.315360000.1871276124.3344746846-15262859",
"access_token": "21.05744f8121f2575e5d1894bf8524358c.2592000.1558508124.3344746846-15262859",
"scope": "snsapi_base pcs_pic_rw"
3.使用 Access Token 示例
swan.request({
url: 'https://pan.baidu.com/rest/2.0/xpan/multimedia?method=filemetas&access_token=' + token,(上面获取到的token)
method: 'GET',
dataType: 'json',
data: {},
header: {
'content-type': 'application/json', // 默认值