最近做一个个人博客,其中的登陆模块我想使用第三方登陆来做。上网搜一下有好多例子,但是大多数都是一个网站的第三方登陆,如QQ、微博、人人,没有集成的组件,于是就在网上搜一下百度的apistore,百度果真没有让人失望。等我下载javascript版的sdk时,一盆冷水浇了下来,javascript版的sdk不可以下载,可能是网站出错的原因。不得已自己慢慢摸索,终于搞定了,下面我来分享一下这个插件,让后来人少走些弯路。
看图
后面使用PC端js组件设置,并且复制设置的代码,代码如下
<script src="~/Scripts/load/Baidu-Frontia-JS-1.0.0.js"></script>【这个js插件,下载一下第三方登陆的demo就有,复制下来】 <script type="text/javascript" id="bd_soc_login_boot"></script> <button type="button" id="login-test">Login QQ</button> <pre id=‘some-msg‘></pre> 下边的可以在pc端js组件中生成 <script type="text/javascript"> (function () { var t = new Date().getTime(), script = document.getElementById("bd_soc_login_boot"), redirect_uri = encodeURIComponent("http://dongsheng.club/login/index"), domid = "some-msg", src = "http://openapi.baidu.com/social/oauth/2.0/connect/login?redirect_uri=" + redirect_uri + "&domid=" + domid + "&client_type=web&response_type=code&media_types=sinaweibo%2Cqqdenglu%2Cbaidu%2Cqqweibo%2Ckaixin%2Crenren&size=-1&button_type=4&client_id=LE3C0q1hxETmHDlbYtG9kSG9&view=embedded&t=" + t; script.src = src; })(); </script>
这个地址 http://dongsheng.club/login/index 是什么?看下图 【网址可以随便起】
到此处,基本ok到了关键地方,此时网页也可以运行了,第三方登陆后,返回的url带有参数
这里面比较有用的东西是access_token=*********************需要提取出来,
登陆这个网站:http://developer.baidu.com/wiki/index.php?title=docs/social/api/list 获取
然后进行二次请求
你要的数据都在json中
时间: 2024-10-13 04:26:02