PHP如何实现微信网页授权
微信网页授权是服务号才有的高级功能,开发者可以通过授权后获取用户的基本信息;在此之前,想要获取消息信息只能在用户和公众号交互时根据openid获取用户信息;而微信网页授权可在不需要消息交互,也不需要关注的情况下获取用户的基本信息。
首先先修改网页授权的阿里云域名
微信网页授权时通过OAuth2.0完成的,整个过程分为三步:
- 用户授权,获取code;
- 根据code获取access_token【可通过refresh_token刷新获取较长有效期】
- 通过access_token和openid获取用户信息
1.用户授权,获取code
<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {public function index(){//公众号$appid='wx7e35296d7fd50349';$redirect_uri=urlencode('http://www.foreverhao.top/vote/index.php/home/index/getcode');//将字符串以url编码$url="https://open.weixin.qq.com/connect/oauth2/authorize?appid=$appid&redirect_uri=$redirect_uri&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect";header("Location:" . $url);//header函数向客户发送原始的HTTP报头}public function getcode(){$code=$_GET['code'];//预定义$_GET变量用于收集来自method="get"的表单中的值echo $code;// $json = $this->access_token($code);// echo $json;}
可以添加关键字投票和相应地址访问微信时可以获取code
2.根据code获取access_token
public function getcode(){$code=$_GET['code'];//预定义$_GET变量用于收集来自method="get"的表单中的值// echo $code;$json = $this->access_token($code);echo $json;}//获取access_tokenprivate function access_token($code){$appid="wx7e35296d7fd50349";$appsecret="7313d506cd98681236061585c3cbb1f1";$url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=$appid&secret=$appsecret&code=$code&grant_type=authorization_code";$ret=https_request($url);return $ret;}
目前先实现两步获取access_token;
PHP如何实现微信网页授权相关推荐
- 不插即用!配备微信网页授权模块的CodeIgniter应用脚手架
昨天发了一篇<即插即用!适用于CodeIgniter框架的微信网页授权模块>,今天想了想干脆整理一个脚手架好了. Github仓库: CodeIgniter-Weixin_Template ...
- android user-agent iso-8859-1,微信网页授权,错误40163,ios正确,安卓错误?
2018-07-18:一年时间过去了,我又回来填自己挖的坑了!! 2017年7月,我遇到了这个问题,当时在这里提了问,后来又跟踪了两天,也没彻底搞懂,反正时好时坏,,后来自己主要精力放在H5+开发上, ...
- 微信遇到特殊服务器,解决微信网页授权,出现errcode:40163,errmsg:codebeenused,看似微信访问了2次这个回调接口的问题...
先说说自己理解的微信机制: 微信内访问自己服务器的页面,如果访问出错,微信就会认为是微信自身的问题,那么他就会开启另外一个IP来访问这个页面(什么上海的IP,深圳的IP不等),再把访问结果发回用户端, ...
- 微信网页授权,获取微信code,获取access_tocken,获取用户信息
微信开发中,经常有这样的需求:获得用户头像.绑定微信号给用户发信息.. 那么实现这些的前提就是授权! 1.配置安全回调域名: 在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的" ...
- ajax 微信code获取_ajax 实现微信网页授权登录的方法
项目背景 因为项目采用前后端完全分离方案,所以,无法使用常规的微信授权登录作法,需要采用 ajax 实现微信授权登录. 需求分析 因为本人是一个phper ,所以,微信开发采用的是 EasyWeCha ...
- 微信网页开发教程 php,PHP实现微信网页授权开发教程,php授权教程_PHP教程
PHP实现微信网页授权开发教程,php授权教程 微信网页授权是服务号才有的高级功能,开发者可以通过授权后获取用户的基本信息:在此之前,想要获取消息信息只能在用户和公众号交互时根据openid获取用户信 ...
- 微信wechat.class.php,laravel使用组件实现微信网页授权登入
laravel框架中的实现简单实现微信网页授权登入 首先引入基于laravel的easywechat的组件,laravel版本5.8 $ cd laravel $ composer require & ...
- 微信开发---微信网页授权、JS-SDK和微信公众号的基本设置
用了好几个小时的时间,整理了一下关于公众号的思维导图,由于CSDN不能上传相对应的文件,所以萍子一一的分解开的截图附上来,希望对大家有所帮助哦~ 因为是电脑设备自动截图,又鉴于内容比较多,可能不是太清 ...
- java : 实现微信网页授权,超详细!
背景 使用微信公众号实现网页授权. 开始 1.微信网页授权的官方文档 微信网页授权 2.申请微信测试公众号 从红框进入申请页面. 填写必要的信息,注意上图红框部分的域名需要可以外网能够访问,微信需要发 ...
最新文章
- 不到两个月后,有关比特币现金升级的讨论升温
- Filebeat配置module采集nginx日志
- Web 应用客户端渲染和服务器端渲染的比较
- STM32 PWM输出实验
- GP学习(七)—Accessing raster workspaces
- 解决centos使用nc命令报错:Ncat: Connection refused.
- Redisbook学习笔记(3)数据类型之字符串
- 今日之“烧饼油条”!
- 从Slice_Header学习H.264(三.1)--相关细节之 POC的计算
- mysql函数变量存储_MySQL存储过程、存储函数、变量
- (十:2020.08.28)CVPR 2018 追踪之论文纲要(译)
- wsl使用ssh连接
- Classification-Driven Dynamic Image Enhancement
- 给文档加密,你懂多少?
- 【Java实战篇】SpringBoot+MyBatis快速实现登录注册
- Bootstrap typeahead自动补全插件的坑
- yum-网络yum和本地yum
- Java求1000以内的水仙花数
- 使用arduino D1 wifi模块(WeMos D1)连接阿里云物联网平台并成功实现APP点亮板载LED(五)---MQTT.fx模拟设备连接阿里云
- lua函数返回值 lua_call lua_getglobal lua_gettop(L)
热门文章
- Kubernetes(k8s)四、Pod生命周期(初始化容器的应用,探针liveness、readliness应用,)
- Computer:教你实用一招,如何实现点击PPT文件即可播放,而避免打开PowerPoint软件
- 玩转前端 Video 播放器
- C语言从一段字符串中提取IP地址的方法
- 天蝎项目整机柜服务器技术规格,天蝎项目整机柜服务器技术规范v1.01天蝎项目整机柜服务器技术规范v1.01.pdf...
- PostGIS搭建、空间数据库创建
- 新浪开发者平台(Sina App Engine)初探
- windows使用scrapy爬取微信评论
- 银河麒麟系统开启root用户登录
- 计算机考试用户没有注册类,电脑中出现没有注册类别的错误提示怎么解决