微博API授权登录(仅二维码登录)

访问微博API都需要access_token再加uid或者screen_name,所以第一步就是要授权,获取到access_token。

第一步:创建网站应用,创建之后,有个appkey和appsecret;
第二步:获取二维码,响应的是一串imgUrl,将其放在img标签的的src属性里面即可显示出二维码;

//获取二维码的url
//请求参数
let paramsData={
    client_id: appkey,
    redirect_uri: '回调地址',
    scope: '',
    response_type: 'code',
    state: date.getTime()  //时间戳
}
//get方式,需要将参数拼接到url后面
//响应的数据形式
https://api.weibo.com/oauth2/qrcode_authorize/show?vcode=xxxxxx&qr_url=xxxxxxx

第三步:二维码有个状态值,1代表用户还未扫描,2代表用户已经扫描,但是还未确认登录,3代表已经授权登录,当状态为3的时候还会返回过来一串code,access_token就是根据code生成的,所以要将其保存下来。同时,设置一个定时函数,不断的请求二维码状态,以此来判断用户的登录情况;

//请求二维码的状态
//参数
let paramsData={
    vcode:xxxx
}
//这个vcode就是上一个请求回传过来的,可以将其截取出来
//响应数据
{
status:"3"
url:"回调地址state=xxxxx&code=xxxxxx"
}

第四步:获取到code之后,又发请求给服务器,获取access_token。

//从前一个请求会送过来的数据截取到code之后
//再发一个请求给服务器
//参数形式
let data = {
    client_id: 'xxxxx',
    client_secret: 'xxxxx',
    grant_type: 'authorization_code',
    code: code,
    redirect_uri: 'xxxxx',
}

注意:这里是post方式,但是参数要拼接在url后面,传一个空的data过去

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值