当前位置: 首页 > news >正文

前端HTML第三方登录集合,微信,微博,企鹅

申请开发者账号之内的就不累赘了,网上一大堆:

说下需求,一个网页要在三类容器运行,公司app,微信自动登录,浏览器。

假设是已经申请完成各平台开发者账号。

先来简单的,微博和QQ

微博:

引入微博JS

<script src="http://tjs.sjs.sinajs.cn/open/api/js/wb.js?appkey=*******&debug=true" type="text/javascript" charset="utf-8"></script>

appkey中,填入你的微博开发者id(替换****)

<span id="wb_connect_btn">微博登录按钮</span>

在你的页面微博登录按钮标签上,加入以上id。页面加载时,微博会自动加载样式,你也可以自己强行修改。

<script> WB2.anyWhere(function (W) { W.widget.connectButton({ id: "wb_connect_btn", type: '3,2', callback: { login: function (o) { //登录后的回调函数 console.log(o); thirdparty(null,null,o.avatar_hd, o.name ,3, o.id);//个人方法 try{ document.getElementsByClassName('loginout')[0].click(); //页面需求,当前页面登录完成之后,不进行跳转,所以模拟点击事件,让微博账号在当前域中退出。不影响下次登录。(元素为微博动态添加) //微博没有提供退出方法。下面的logout为另一种开发模式调用。 }catch(e){ console.log(e); } }, logout: function () { //退出后的回调函数 } } }); }); </script>

将以上标签全部加入html中。

至此,只要在页面中登录之后,就能在控制台看到返回数据。当然,测试要在微博注册的域下。

QQ登录:

和微博一样,引入JavaScript文件

<script type="text/javascript" src="http://qzonestyle.gtimg.cn/qzone/openapi/qc_loader.js" />

②引入JS文件

绑定点击事件 此时浏览器端自动打开QQ弹窗授权页 跳转红框中的回调地址 由于新URL带# 所以只能再跳回登录页

③ JS 截取#后边的参数+ 回调地址组成新的跳转地址 再次请求回调地址

后端处理(部分)

效果图

现在来说最蛋疼的微信登录。

微信登录提供两种方法:

第一种,扫码登录:

需要在微信开发者平台中,注册获取appId。

微信登录按钮:

<span class="weixin-login"></span>

在你微信登录按钮上,添加点击事件,执行以下代码:

$('.weixin-login').on('click',function(){ window.location.href='https://open.weixin.qq.com/connect/qrconnect?' + 'appid=*******&redirect_uri=http%3a%2f%2fwww.xxxxxx.com%2f'+window.location.pathname.substr(1)+'&response_type=code&scope=snsapi_login&state=3d6be0a4035d839573b04816624a415e#wechat_redirect'; });

需要替换:

redirect_url:要想传当前url,直接encodeURIComponent(window.location.href) //当然,需要你自己进行拼接,不懂的留言

至此,当用户点击之后,跳转至扫码界面:

例如:https://passport.yhd.com/wechat/callback.do?code=CODE&state=3d6be0a4035d839573b04816624a415e

至此,拿到第一步令牌,code。在你的回调页面中,你要获取url中的code去和微信换取下一步的令牌。因为换取下一步的令牌需要涉及到跨域请求,但是微信不让跨域请求,只能在后台进行后续事项。

第二步,后台请求:https://api.weixin.qq.com/sns/oauth2/access_token?appid=[APPID]&secret=[SECRET]&code=[CODE]&grant_type=authorization_code

替换中括号中的数据。(我走的get请求)。

返回以下数据:

{ "access_token":"ACCESS_TOKEN", "expires_in":7200, "refresh_token":"REFRESH_TOKEN", "openid":"OPENID", "scope":"SCOPE", "unionid": "o6_bmasdasdsad6_2sgVt7hMZOPfL" }

最后一步就不说了:

https://api.weixin.qq.com/sns/userinfo?access_token=[ACCESS_TOKEN]&openid=[OPENID]

替换成上次请求获取到的数据,再请求一次,获奖用户基本信息。

详情查看微信开发者帮助

http://www.jsqmd.com/news/649520/

相关文章:

  • 【2026-04-15】家庭模式
  • 编程语言性能对比
  • 大润发购物卡回收靠谱吗 - 团团收购物卡回收
  • VCO设计避坑指南:选择Dual-mode还是Class F?从调谐范围、相位噪声到实际流片考量
  • Coze实战 | 三步打造个性化知识科普短视频
  • 终极指南:为什么DreamGaussian在3D生成效率上碾压其他框架?
  • VMware备份接口
  • 回收支付宝立减金的隐藏套路与真实心得,让你不再踩雷! - 团团收购物卡回收
  • 3000行代码打造可自我进化的GenericAgent框架,多场景应用超便捷!
  • RS485接口实战指南:从原理到组网全解析
  • 一文搞懂分期乐微信立减金套装回收变现全流程! - 圆圆收
  • 2026年知网升级后AIGC率高达80%?实测这款方法高效降低60%AIGC率! - 降AI实验室
  • 数据仓库实战:从Hive大宽表到MySQL范式表,聊聊星型与雪花模型的选择与性能调优
  • 性价比高的纹绣培训机构大盘点,服务不错且售后完善的学校哪家好 - 工业推荐榜
  • NFD云解析架构解密:Vert.x高性能异步框架如何实现秒级解析
  • 西门子V90伺服参数实战指南:从入门到精通
  • GTSAM实战:从因子图构建到机器人状态估计
  • 20260412 紫题训练
  • 无锡方管切割哪家强?2026年04月口碑厂家推荐,304不锈钢/无缝钢管/316L无缝钢管,无锡方管厂家销售联系方式 - 品牌推荐师
  • 细聊后期运维有保障的水生态企业,哪家更值得选择 - myqiye
  • 用QSerialPortInfo和QSerialPort打造一个跨平台的串口调试助手(Qt/C++)
  • ZLUDA终极指南:让非NVIDIA显卡也能运行CUDA程序的完整教程
  • SPSS新手必看:5分钟搞定描述性统计分析(附实战案例)
  • Puppeteer-examples 游戏自动化:用代码玩转Google Pac-Man涂鸦的完整教程
  • 佳能Service tool v6.200 废墨清零软件,佳能打印机报错5B00,5B01,5B02,5B03,5B04,1700,P07,E08怎么办?这个清零就可以了。G5080,TS3380
  • ZED相机低光环境优化指南:Gamma/增益设置误区与夜间拍摄实战
  • 【重磅】市场的朋友圈广告代理企业 - 服务品牌热点
  • STM32 RTC日历功能避坑指南:从寄存器操作到HAL库调用的正确姿势
  • G-Helper深度解析:华硕笔记本性能调优的轻量级神器
  • 2026年挑选专业的电缆故障测试仪供应商,这几点核心标准别忽略 - 企业推荐官【官方】