微信公众号网页授权,获取用户信息以及openid

这几天做项目,想通过公众号的appid获取用户的openid就,然后在网上查资料,问朋友,最后找到了方法,就是这个网页授权。
起初一直很蒙,这个怎么弄,又是需要code,又是需要允许授权的,我怎么获取这个code,在哪里出发这个网页授权的事件呢,最后弄明白了,其实很简单。

首先我们先写一个html网页,比如这样的:

点击·确认授权·,执行下面php代码里面的request_wechat1方法就ok了。

对,没错,这就完成了,简单吗,是不是很简单,只需要一步

PHP代码:

public function request_wechat1(){$app_id  = '微信公众号appid';// 回调地址$redirect_url = 'https://www.tjhaizhixian.com/seafood/public/index/base/get_open_id1';$url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" . $app_id . "&redirect_uri=" . $redirect_url . "&response_type=code&scope=snsapi_base&state=0#wechat_redirect";header("Location:{$url}");die;
}
/*** 微信回调地址,以获取openid*/
public function get_open_id1(){$code = Request::instance()->param('code');$app_id  = '微信公众号appid';$app_secret = '微信公众号app_secret';//第一步:取全局access_token$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$app_id}&secret={$app_secret}";$token = $this->get_json($url);//第二步:取得openid$oauth2Url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid={$app_id}&secret={$app_secret}&code={$code}&grant_type=authorization_code";$oauth2 = $this->get_json($oauth2Url);//第三步:根据全局access_token和openid查询用户信息$access_token = $token["access_token"];$openid = $oauth2['openid'];$get_user_info_url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$access_token&openid=$openid&lang=zh_CN";$userinfo = $this->get_json($get_user_info_url);print_r($userinfo);
}protected function get_json($url){$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);$output = curl_exec($ch);curl_close($ch);return json_decode($output, true);
}

谢谢观看,有建议可以私信

微信公众号网页授权,获取用户信息以及openid -- PHP后台相关推荐

  1. 微信公众号网页授权获取用户信息的流程

    官网文档 网页授权流程分为四步: 引导用户进入授权页面同意授权,获取code 通过 code 换取网页授权access_token(与基础支持中的access_token不同)(我的需求只需要到第二部 ...

  2. php微信授权没有code返回,解决关于微信公众号网页授权获取code参数的问题

    解决关于微信公众号网页授权获取code参数的问题 发布时间:2018-07-24 23:21, 浏览次数:3327 , 标签: code * 在微信网页授权过程中,需要获取code参数,因为我用的是公 ...

  3. 微信公众号开发之获取用户信息

    微信获取用户信息的方式有两种,静默授权(无需用户同意)和非静默授权(需要用户" 手动点击 "拉取授权,可以用户无需关注公众号即可获取用户信息) 整体的代码请查看最后,前边为原理介绍 ...

  4. 微信公众号接入和获取用户信息

    主要原理: 1.从微信公众号发来的get请求为验证服务器安全性的 2.从微信公众号发来的post请求为接受和回复用户信息的 3.先根据是否有code来进行判断,如果有code的话,根据code换取op ...

  5. 【微信公众号开发】获取用户信息时,有时成功获取,有时提示“invalid openid hint”

    原因:保存openid的session在某个方法里被重新赋新值了.所以一旦调用了这个方法,再去获取用户信息时,就会报错.

  6. 微信授权地理位置php,微信公众号第三方授权获取用户的的地理位置--坑

    首先注册公众号,配置好 URL js URl ,这个就不多介绍了 第一步,直接 在菜单里 同意授权,获取code 这是第一个坑 ,记住,一定要用  urlEncode 对你的 重定向 URL  进行处 ...

  7. 微信公众号第三方授权获取用户的的地理位置--坑

    首先注册公众号,配置好 URL js URl ,这个就不多介绍了 第一步,直接 在菜单里 同意授权,获取code 这是第一个坑 ,记住,一定要用 urlEncode 对你的 重定向 URL 进行处理 ...

  8. 微信公众号网页授权--前端获取code及用户信息(vue)

    前段时间开发微信公众号网页授权,虽然网上已经有很多关于这方面的博客或者教程,但是第一次开发还是遇到挺多坑的,以下分享一下我的踩坑填坑之路. 一.测试号相关配置 首先在你公司申请的测试号上配置好相关信息 ...

  9. 微信公众号网页授权--前端获取code及用户信息(vue)【简单详细版】

    嗨喽大家好,前段时间开发微信公众号网页授权,虽然网上已经有很多关于这方面的博客或者教程,但是第一次开发还是遇到挺多坑的,以下分享一下我的遇到的一些问题的见解,希望对你们有帮助. 一.测试号相关配置 首 ...

最新文章

  1. FPGA之道(33)Verilog数据类型
  2. android使用java library module时初始化OkHttpClient时报错 ClassDefNotFoundError之类的
  3. Angular复习笔记(一)
  4. SAP UI5 应用开发教程之五十五 - 如何将本地 SAP UI5 应用通过 Node.js Express 部署到公网上试读版
  5. github 学习使用
  6. [openjudge] 2797最短前缀 Trie
  7. mysql简介博客_mysql简介
  8. 【Altium Designer】PCB如何生成Gerber文件
  9. LSB算法BMP图片信息隐藏技术 c语言
  10. JQuery 解决多个文件下载只下载一个的问题
  11. 计算物品的良率(python)
  12. 中国省市地图json数据包及解析
  13. 习题4-9 打印菱形图案(15分)
  14. winXP系统在“我的电脑”里打不开FAT32的U盘(8G)的一种解决办法
  15. 计算机编程课程顺序_您可以在2月开始免费在线编程和计算机科学课程
  16. 2022-2027年中国紫苏行业市场全景评估及发展战略规划报告
  17. ShareSDK微信分享时的坑
  18. “国防七子”经费暴增,清华足足362亿元,甩第二名101亿 |全国高校2022预算大公开...
  19. Ubuntu找不到Wi-Fi适配器No Wi-Fi Adapter Found修复笔记
  20. 端口、TCP/UDP、端口转发、UPnP

热门文章

  1. LeetCode算法题解 38-报数
  2. 《逆向工程核心原理》相关说明
  3. 黑群辉DSM 6.2.3 系统安装
  4. 罗塞塔石碑1141问题
  5. C::Mat取出指定区域的方法
  6. Java集合框架笔记记录 --- 原创@余胜军 但有个人心得
  7. Tinyxml一一利用tinyxml读取节点元素属性值
  8. 【韩顺平Linux】学习笔记1
  9. 【解决】grafana密码出现错误无法登录,强制进行密码修改
  10. Ecshop会员注册的Email 电子邮箱改成非必填项