1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > pc端和移动端集成第三方快捷登录 --- 微博为例

pc端和移动端集成第三方快捷登录 --- 微博为例

时间:2019-01-27 14:44:56

相关推荐

pc端和移动端集成第三方快捷登录  ---  微博为例

通过新浪微博的开放平台去注册一个应用。

之后你会得到一个App Key和一个App Secret。拥有它们,你才可以申请权限。

2、在高级信息中编辑授权回调页,这里与后面代码里的回调地址要一致

3、 微博登录标识的地址如下:

/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI

参数

返回值

4、点击你的工程微博登录按钮打开授权页面,如果用户同意授权,页面跳转至 YOUR_REGISTERED_REDIRECT_URI/?code=CODE

跳转地址:红色部分为微博pc端授权地址,移动端授权接口地址:/oauth2/authorize并且在loginWbUri后面增加两个参数 '&response_type=code&display=mobile'

app:

pc:

//同意授权后会重定向/response&code=CODE

示例:/callback.php?code=1f5848d0562f39fbbaf8d35cbc853ea3

5、get获取code值,用CURL方式请求Access Token(这里可以走本地服务器也就是自己的后台接口进行登录)

请求地址:

/oauth2/access_token?client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=authorization_code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&code=CODE

请求方式:

POST

请求参数:

返回值

{"access_token": "SlAV32hkKG","remind_in": 3600,"expires_in": 3600,"uid":1887188234}

6、使用获得的Access Token和uid调用API

获取用户信息API:

/2/users/show.json

请求参数:

参数uid与screen_name二者必选其一,且只能选其一;

返回示例:

{"id": 1404376560,"screen_name": "zaku","name": "zaku","province": "11","city": "5","location": "北京 朝阳区","description": "人生五十年,乃如梦如幻;有生斯有死,壮士复何憾。","url": "/zaku","profile_image_url": "/1404376560/50/0/1","domain": "zaku","gender": "m","followers_count": 1204,"friends_count": 447,"statuses_count": 2908,"favourites_count": 0,"created_at": "Fri Aug 28 00:00:00 +0800 ","following": false,"allow_all_act_msg": false,"geo_enabled": true,"verified": false,"status": {"created_at": "Tue May 24 18:04:53 +0800 ","id": 11142488790,"text": "我的相机到了。","source": "<a href="" rel="nofollow">新浪微博</a>","favorited": false,"truncated": false,"in_reply_to_status_id": "","in_reply_to_user_id": "","in_reply_to_screen_name": "","geo": null,"mid": "5610221544300749636","annotations": [],"reposts_count": 5,"comments_count": 8},"allow_all_comment": true,"avatar_large": "/1404376560/180/0/1","verified_reason": "","follow_me": false,"online_status": 0,"bi_followers_count": 215}返回值:

如图,此时就可以获取想要的用户信息(用户昵称、头像等),可让用户直接登录访问网站了

其实像微信登陆、QQ登陆的原理都一样,都是:

1、获取用户授权,取得code

2、将code发送到授权服务器获取Access Token

3、通过Access Token调取API接口获取用户信息

微博api地址:/wiki/%E9%A6%96%E9%A1%B5

基于开发过程中的随笔记录,有啥错误的请指正啊 呵呵呵

想要整理更多的碎片知识,扫码关注下面的公众号,让我们在哪里接着唠!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。