网站接入微信扫码登录并获取用户基本信息(微信开放平台)

news/2024/4/27 14:19:42/文章来源:https://blog.csdn.net/weixin_34126215/article/details/88794147

现在的网站基本都接入微信登陆了,就好像下面这样的。

clipboard.png

只需要用微信扫一下二维码,这个网站就可以展示你的微信昵称和头像,免去注册账号和输入密码登录的步骤,还免去设置头像和昵称的步骤,所以是挺方便的。

那么如何把自己的网站接入这个呢?首先咱们得先在微信开放平台注册账号并且创建一个网站应用,等待审核通过后就可以获得Appid和AppSecretbingqie并且还要设置回调域名,这个不多说。

首先我们根据官方文档的流程来做:

第一步:请求CODE
https://open.weixin.qq.com/connect/qrconnect?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect

通过以上的接口请求CODE

请求参数:

clipboard.png

OK参数说的明白,咱就开始写代码了。

新建login.php

<?php
//生成state参数,利用MD5对时间戳进行加密生成32位数的state,也是为了简单哈哈,自己用其他方法生成吧
//时间戳
$time = time();
//对时间戳进行加密,就是state
$state = MD5($time);
//APPID
$appid = "你的APPID";
//redirect_uri回调地址,也就是请求完了之后,咱们需要跳转的地址,我这里直接跳转到我网站的oauth.php的地址,这个文件是 用来下一步获取access_token的
$redirect_uri = "http://www.xxx.com/open/oauth.php";
//scope默认是snsapi_login
$scope = "snsapi_login";//拼接参数进行自动跳转
echo "<script>location.href=\"https://open.weixin.qq.com/connect/qrconnect?appid=$appid&redirect_uri=$redirect_uri&response_type=code&scope=$scope&state=$state#wechat_redirect\";</script>";
?>

我们在浏览器访问login.php后,就会生成一个code和携带了我们页面生成的state
即:redirect_uri?code=CODE&state=STATE

那么这两个参数,就进入和第二步需要用到CODE

第二步:通过code获取access_token

获取接口:

https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

老样子,还是要构建请求参数

上面是有一个oauth.php的
这个文件已经接收到了code,我们就用这个文件构建请求参数

oauth.php

<?php
header("Content-type:text/html;charset=utf-8");
//获取login.php传过来的code
$code = $_GET["code"];//通过接口获取access_token
//构造请求参数
$appid = "你的APPID";
$appsecret = "你的APPSecret";
//拼接参数,自动跳转
echo "<script>location.href=\"https://api.weixin.qq.com/sns/oauth2/access_token?appid=$appid&secret=$appsecret&code=$code&grant_type=authorization_code\";</script>";
?>

如果成功,那么就会返回一个JSON数据

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

否则:

{"errcode":40029,"errmsg":"invalid code"}

clipboard.png

成功截图:

clipboard.png

那么,openid都获取到了access_token也获取到了,能干啥?

当然是获取用户基本信息啊,直接调用接口就行。

第三步:获取用户基本信息
https://api.weixin.qq.com/sns/userinfo?access_token=获取到的ACCESS_TOKENQ&openid=获取到的OPENID

然后访问,就是一堆用户基本信息了。

clipboard.png

头像,昵称,城市,国家,unionid

作者:tanking

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_748211.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

我的网站搭建: (第二天) 数据库选型

2019独角兽企业重金招聘Python工程师标准>>> 上一篇记录的是模型设计&#xff0c;也就是博客展示的基本功能&#xff0c;那么这些模型在进行数据迁移的时候就会产生数据。如何有效地保存好这些数据&#xff0c;这就是每一个开发者都值得去斗智斗勇的一件事&#xff…

推荐一个有趣的Chrome扩展程序-查看任意网站的开发技术栈

对于前端开发人员来说&#xff0c;目前的前端框架层出不穷&#xff0c;最受欢迎的莫过于所谓的前端框架三驾马车&#xff1a;Angular&#xff0c; React和Vue。在学习的过程中&#xff0c;肯定好奇现在的互联网公司的网站用的何种前端框架来开发的。 Chrome扩展程序商店里就提供…

如何免费的让网站启用HTTPS

点击上方蓝色字体&#xff0c;选择“置顶公众号”优质文章&#xff0c;第一时间送达来源&#xff1a;https://coolshell.cn/(酷壳网)今天&#xff0c;我把CoolShell变成https的安全访问了。我承认这件事有点晚了&#xff0c;因为之前的HTTP的问题也有网友告诉我&#xff0c;被国…

实现网站图片瀑布流重点记录

在前端通过js完成对瀑布流的实现&#xff0c;很简单&#xff0c;主要对前端很多知识不熟悉&#xff0c;在此做个记录&#xff0c;数据库中数据只添加了14张照片&#xff0c;通过重复取这14张照片模拟从数据库中取大量图片 主要的注意点在于initImg函数中&#xff0c;每次滑动到…

5个鲜为人知的黑科技网站,强大到不敢想象

作者&#xff1a;王嘻嘻_5578原文&#xff1a;http://suo.im/4vRcCZ如今的网站是越来越多&#xff0c;但许多黑科技网站却是不为人知&#xff0c;其实现在的网站都跟APP的功能相似&#xff0c;甚至许多好网站会比APP的作用更强更全面。今儿给亲们分享五款黑科技网站&#xff0c…

我是如何在两天内做完一个网站的

来源:http://suo.im/5eyK0X有点标题党的嫌疑&#xff0c;不过确实网站的主体是在两天内的完成的&#xff0c;后面只是抓取了素材和完善细节。以下内容绝对是赤裸裸的干货。**网站前期的准备&#xff1a; **1、买域名2、租服务器3、编写网站代码总体就这三步&#xff0c;但是每一…

使用Bootstrap 3开发响应式网站实践07,页脚

页脚部分比较简单&#xff0c;把一个12列的Grid切分。<footer><div class"container"><div class"row"><div class"col-sm-2"><h6>Copyright ©新浪体育</h6></div><div class"col-sm-4&…

高并发高流量网站架构

Web2.0的兴起&#xff0c;掀起了互联网新一轮的网络创业大潮。以用户为导向的新网站建设概念&#xff0c;细分了网站功能和用户群&#xff0c;不仅成功的造就了一大批新生的网站&#xff0c;也极大的方便了上网的人们。但Web2.0以用户为导向的理念&#xff0c;使得新生的网站有…

10个程序员需要收藏的良心网站,你绝对没有用过

点击上方蓝色字体&#xff0c;选择“标星公众号”优质文章&#xff0c;第一时间送达上一篇&#xff1a;这300G的Java资料是我师傅当年给我的&#xff0c;免费分享给大家&#xff08;已修复&#xff09;下一篇&#xff1a;昨天分享资料不小心把百度网盘深处的秘密泄露了&#xf…

快速建站利器!Github 上 10 个开源免费的后台控制面板

点击上方蓝色字体&#xff0c;选择“标星公众号”优质文章&#xff0c;第一时间送达上一篇&#xff1a;这300G的Java资料是我师傅当年给我的&#xff0c;免费分享给大家&#xff08;已修复&#xff09;下一篇&#xff1a;昨天分享资料不小心把百度网盘深处的秘密泄露了&#xf…

CSDN网站阅读更多:实现原理

一 设计案例 现在很多网站都增加了阅读更多功能。以CSDN为例&#xff0c;分析其实现原理。 二 设计原理 1 内容区的初始高度是固定的。 2 背景渐变的操作区&#xff0c;遮盖在内容区上面 3 点击按钮时&#xff0c;解除内容区的高度限制&#xff0c;同时移除操作区 三 模拟实现 …

这些网站利用起来,睡前双休时间都能赚点零花钱!

出来工作&#xff0c;说白了都是为了钱&#xff0c;什么理想&#xff0c;梦想&#xff0c;有了钱再说吧&#xff01; 很多朋友做着普通的工作&#xff0c;拿着微薄的工资&#xff0c;在这个大城市摸爬滚打&#xff0c;发现&#xff0c;钱总是不够用&#xff01; 有时会抱怨“为…

交公粮了:我经常逛的技术网站

点击上方蓝色字体&#xff0c;选择“标星公众号”优质文章&#xff0c;第一时间送达zuo关注公众号后台回复pay或mall获取实战项目资料视频作者&#xff1a;三分恶来源&#xff1a;cnblogs.com/three-fighter/p/13641835.html众所周知&#xff0c;程序员是一个需要不断学习的职业…

用Nginx禁止国外IP访问我的网站...

点击上方蓝色字体&#xff0c;选择“标星公众号”优质文章&#xff0c;第一时间送达关注公众号后台回复pay或mall获取实战项目资料视频作者&#xff1a;运维小弟出处&#xff1a;toutiao.com/i6860736292339057156/先来说说为啥要写这篇文章&#xff0c;之前看了下 Nginx 的访问…

又一神器,输入网址,点击下一步,瞬间克隆一个网站...!

点击上方蓝色字体&#xff0c;选择“标星公众号”优质文章&#xff0c;第一时间送达关注公众号后台回复pay或mall获取实战项目资料视频HTTrack是一个免费的网站克隆工具。它允许您将Internet上的万维网站点下载到本地目录&#xff0c;以递归方式构建所有目录&#xff0c;并从服…

阿里云 + Ubuntu + WordPress 建造个人博客网站

前言 需要准备的东西&#xff1a; 需要注册一个域名域名需要备案需要购买一个ESC服务器 上述的操作&#xff0c;非常的简单&#xff0c;就不多叙述了 一、阿里云ESC服务器配置 1.首先远程连接服务器 输入用户名密码 根据提示输入&#xff0c;Linux 用户名一般为 root&…

新建的windows服务器总是弹出 “Internet Explorer增强安全配置正在阻止来自下列网站的此应用程序中的内容“

问题描述 最近由于工作原因&#xff0c;申请了一个windows服务器&#xff0c;打开自带的Internet Explorer&#xff0c;输入任何网址都会弹出该问题&#xff1a; 问题原因 windows服务器为了安全起见&#xff0c;默认启用了Internet Explorer 增强安全配置&#xff0c;当我…

最适合晚上睡不着看的 8 个网站,建议收藏哦

大家好&#xff0c;我是老赵1. 菜鸟教程一个涵盖了几乎所有编程教程的文档网站&#xff0c;不出意外你查询的所有 API 都可以在这里找到&#xff0c;不仅限于于前端、后端&#xff0c;还包括设计模式、工具等。官网&#xff1a;https://www.runoob.com/2. 慕课网一个涵盖了几乎…

一个网站从0到1搭建部署上线的完整流程(包教包会)

大家好&#xff0c;我是老赵&#xff01;有很多做网页的前端后端小白都想把自己辛辛苦苦做出来的网站放到网上&#xff0c;让别人观摩观摩。可无奈技术有限&#xff0c;对于网站部署流程有些迷茫。在这里&#xff0c;我会告诉大家&#xff0c;如何将自己做出来的网站放到网上。…

php接入qq登陆,网站接入QQ登录-腾讯开放平台

完成开发者认证使用qq登录完成实名认证&#xff0c;点击创建应用创建网站应用填写相关信息回调域填写很重要如果填写错误扫码会出现 100010【QQ登录】登录常见错误码前端这是目前网站接入的qq登录,注意点1.其中关于涉及到**appkey**的接口的貌似通过客户端提交不过去&#xff0…