微信网页授权是服务号才有的高级功能,开发者可以通过授权后获取用户的基本信息;在此之前,想要获取消息信息只能在用户和公众号交互时根据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如何实现微信网页授权相关推荐

  1. 不插即用!配备微信网页授权模块的CodeIgniter应用脚手架

    昨天发了一篇<即插即用!适用于CodeIgniter框架的微信网页授权模块>,今天想了想干脆整理一个脚手架好了. Github仓库: CodeIgniter-Weixin_Template ...

  2. android user-agent iso-8859-1,微信网页授权,错误40163,ios正确,安卓错误?

    2018-07-18:一年时间过去了,我又回来填自己挖的坑了!! 2017年7月,我遇到了这个问题,当时在这里提了问,后来又跟踪了两天,也没彻底搞懂,反正时好时坏,,后来自己主要精力放在H5+开发上, ...

  3. 微信遇到特殊服务器,解决微信网页授权,出现errcode:40163,errmsg:codebeenused,看似微信访问了2次这个回调接口的问题...

    先说说自己理解的微信机制: 微信内访问自己服务器的页面,如果访问出错,微信就会认为是微信自身的问题,那么他就会开启另外一个IP来访问这个页面(什么上海的IP,深圳的IP不等),再把访问结果发回用户端, ...

  4. 微信网页授权,获取微信code,获取access_tocken,获取用户信息

    微信开发中,经常有这样的需求:获得用户头像.绑定微信号给用户发信息.. 那么实现这些的前提就是授权! 1.配置安全回调域名: 在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的" ...

  5. ajax 微信code获取_ajax 实现微信网页授权登录的方法

    项目背景 因为项目采用前后端完全分离方案,所以,无法使用常规的微信授权登录作法,需要采用 ajax 实现微信授权登录. 需求分析 因为本人是一个phper ,所以,微信开发采用的是 EasyWeCha ...

  6. 微信网页开发教程 php,PHP实现微信网页授权开发教程,php授权教程_PHP教程

    PHP实现微信网页授权开发教程,php授权教程 微信网页授权是服务号才有的高级功能,开发者可以通过授权后获取用户的基本信息:在此之前,想要获取消息信息只能在用户和公众号交互时根据openid获取用户信 ...

  7. 微信wechat.class.php,laravel使用组件实现微信网页授权登入

    laravel框架中的实现简单实现微信网页授权登入 首先引入基于laravel的easywechat的组件,laravel版本5.8 $ cd laravel $ composer require & ...

  8. 微信开发---微信网页授权、JS-SDK和微信公众号的基本设置

    用了好几个小时的时间,整理了一下关于公众号的思维导图,由于CSDN不能上传相对应的文件,所以萍子一一的分解开的截图附上来,希望对大家有所帮助哦~ 因为是电脑设备自动截图,又鉴于内容比较多,可能不是太清 ...

  9. java : 实现微信网页授权,超详细!

    背景 使用微信公众号实现网页授权. 开始 1.微信网页授权的官方文档 微信网页授权 2.申请微信测试公众号 从红框进入申请页面. 填写必要的信息,注意上图红框部分的域名需要可以外网能够访问,微信需要发 ...

最新文章

  1. 不到两个月后,有关比特币现金升级的讨论升温
  2. Filebeat配置module采集nginx日志
  3. Web 应用客户端渲染和服务器端渲染的比较
  4. STM32 PWM输出实验
  5. GP学习(七)—Accessing raster workspaces
  6. 解决centos使用nc命令报错:Ncat: Connection refused.
  7. Redisbook学习笔记(3)数据类型之字符串
  8. 今日之“烧饼油条”!
  9. 从Slice_Header学习H.264(三.1)--相关细节之 POC的计算
  10. mysql函数变量存储_MySQL存储过程、存储函数、变量
  11. (十:2020.08.28)CVPR 2018 追踪之论文纲要(译)
  12. wsl使用ssh连接
  13. Classification-Driven Dynamic Image Enhancement
  14. 给文档加密,你懂多少?
  15. 【Java实战篇】SpringBoot+MyBatis快速实现登录注册
  16. Bootstrap typeahead自动补全插件的坑
  17. yum-网络yum和本地yum
  18. Java求1000以内的水仙花数
  19. 使用arduino D1 wifi模块(WeMos D1)连接阿里云物联网平台并成功实现APP点亮板载LED(五)---MQTT.fx模拟设备连接阿里云
  20. lua函数返回值 lua_call lua_getglobal lua_gettop(L)

热门文章

  1. Kubernetes(k8s)四、Pod生命周期(初始化容器的应用,探针liveness、readliness应用,)
  2. Computer:教你实用一招,如何实现点击PPT文件即可播放,而避免打开PowerPoint软件
  3. 玩转前端 Video 播放器
  4. C语言从一段字符串中提取IP地址的方法
  5. 天蝎项目整机柜服务器技术规格,天蝎项目整机柜服务器技术规范v1.01天蝎项目整机柜服务器技术规范v1.01.pdf...
  6. PostGIS搭建、空间数据库创建
  7. 新浪开发者平台(Sina App Engine)初探
  8. windows使用scrapy爬取微信评论
  9. 银河麒麟系统开启root用户登录
  10. 计算机考试用户没有注册类,电脑中出现没有注册类别的错误提示怎么解决