码迷,mamicode.com
首页 > 微信 > 详细

PHP对接微信扫码登录

时间:2020-10-31 02:38:58      阅读:41      评论:0      收藏:0      [点我收藏+]

标签:创建   详细介绍   chat   code   com   官方   管理   获取   nio   

 

1、PC端扫码登录 

如果你将微信小程序和公众账号绑定同一个微信开放平台,那么他们各自的接口返回有一个参数unionid是相同的(没有绑定微信公众账号就没有);那么你就可以使用这个unionid来做业务处理了

接下来会详细介绍以上接口如何获取用户微信信息

PC端扫码登录 

1、首先到微信开放平台注册一个账号,资料自己对着填

2、在管理中心-》网站应用-》创建网站应用 填写要微信扫码的网站资料

技术图片

自己准备资料填写就好了,就提交上去

3、接下来就使用php来对接微信扫码登录了

官方文档:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html

里面的参数根据自己的情况设置,这里只是举个例子参考

3.1发起微信扫码请求,创建login.php文件

<?php
  $appid=xxxxx;#在微信开放平台的应用中可以查看
  $redirect_uri=‘http://www.xxxx.com/index.php‘;
  $state=‘ok‘;#这个参数根据自己的业务填,可以不填
  
$url=‘https://open.weixin.qq.com/connect/qrconnect?appid=$appid&redirect_uri=$redirect_uri&response_type=code&scope=snsapi_login&state=$state#wechat_redirect‘;
  header("Loction:".$url);

以下是请求的参数 ,具体的看官网

技术图片

3.2写一个单独的方法(index.php)获取code,其中微信官方会通过上面的redirect_uri参数找到你这个地址,其中你只要被动接受code就好了

<?php
$code=$_GET[‘code‘];
$state=$_GET[‘sate‘];
$appid=xxxxx;
$secret=xxxx;
#我们可以通过code获取access_token,返回的接口可以var_dump打印一下
$url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=$appid&secret=$secret&code=$code&grant_type=authorization_code";
$res=file_get_contents($url);

 

 返回参数如下图官方的介绍

技术图片

如果想获取用户的数据那么可以

<?php
$code=$_GET[‘code‘];
$state=$_GET[‘sate‘];
$appid=xxxxx;#开放平台获取
$secret=xxxx;#开放平台获取
#我们可以通过code获取access_token,
$url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=$appid&secret=$secret&code=$code&grant_type=authorization_code";
$res=file_get_contents($url);#返回数据可以var_dump打印一下
$res=json_decode($res,true);#这里结果自己判断
$url1="https://api.weixin.qq.com/sns/userinfo?access_token=$res[‘access_token‘]&openid=$res[‘openid‘]";
$userInfo=file_get_contents($url1);#userInfo就是微信获取的用户数据,其中包括openid和unionid,头像、微信昵称等等

以下就是userInfo里面的数据,下图是微信官网的参照图

技术图片

那么你每次通过微信扫码登录就可以把数据跟新或插入到数据库了,其中最主要的就是用到unionid,如果你微信开放平台关联了小程序,那么小程序返回的openid和unionid中openid和微信扫码返回的openid不一样,unionid是相同的,那么我们就可以判断是同一个用户了


 

PHP对接微信扫码登录

标签:创建   详细介绍   chat   code   com   官方   管理   获取   nio   

原文地址:https://www.cnblogs.com/IT-Computer-TcpIp/p/13904826.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!