微信公众平台开发教程①获取用户Openid及个人信息图文详解


Posted in PHP onApril 10, 2019

本文实例讲述了微信公众平台开发获取用户Openid及个人信息。分享给大家供大家参考,具体如下:

前言:

初次尝试微信公众号的开发,对于学习方法的探索都是来源于网上的博客、问答,对于参差不齐的信息,自己也是有苦说不出,抽出一点时间写点文章,既是对自己的学习总结,也希望给予同是菜鸟的学渣一点帮助

背景介绍:

我需要用户接收微信分享的链接后,点击进入给参加活动的用户【点赞】,然后需要后台获取该微信用户的 openid 作为唯一的标记信息,以便保证该用户下次进入后进行数据库的比对,直接提取其对应的操作信息

操作流程:

一.公众号的信息配置

(1).一般情况下,使用的公众号/服务号 进行配置的信息基本如下:

       微信公众平台开发教程①获取用户Openid及个人信息图文详解

(2).因为我个人学习申请的是订阅号,好多功能不开放,进而选择了“公众平台测试账号”

       微信公众平台开发教程①获取用户Openid及个人信息图文详解

(3).点击“进入”后会被要求扫描二维码,使用自己的微信账号就可以

需要注意的是,“接口配置信息”中,URL为验证 token 的回调地址,此URL填写时多半需要你已经将代码上传的外网可访问的地址,我在后面会提供相应代码,再者注意Token值的确定,因为后面代码中会用到

       微信公众平台开发教程①获取用户Openid及个人信息图文详解

(4).下拉页面,需要配置 网页授权获取用户基本信息

需要注意的是回调页面的域名一定不要写错,之前我就是错在这里浪费了很多时间,如果错误,后面二维码扫描时会报错:“redirect_uri参数错误”.个人建议去掉“http://”以及多余的后缀就好,可以参考下图

       微信公众平台开发教程①获取用户Openid及个人信息图文详解

       微信公众平台开发教程①获取用户Openid及个人信息图文详解

注:建议参考新篇(简洁化)-> 微信公众平台开发之微信集成类的使用

二.后台代码的编写

(1).参考回调地址的代码,该文件是我直接从开发者平台下载而来,只改动了“token”值

微信公众平台开发教程①获取用户Openid及个人信息图文详解

(2).参考下面访问地址的代码

注意 appid 的正确填写,其次就是 redirect_uri 的地址确定,我提供的可作参考。再者对于下面代码中的url中“scope=snsapi_userinfo”可以自行控制,需要分辨 snsapi_base 和 snsapi_userfo 的简单区别,百度可有很多具体解释。

微信公众平台开发教程①获取用户Openid及个人信息图文详解

(3).参考 redirect_uri 中的代码

此代码的功能是打印出微信用户的信息,便于参考获取的 json 数据,当提取到微信用户的数据,后续相关数据库操作代码开发就不是难事了。

微信公众平台开发教程①获取用户Openid及个人信息图文详解

三.最后的功能测试

(1).使用“草料二维码”生成微信可扫描的二维码,然后使用手机扫描即可:
   微信公众平台开发教程①获取用户Openid及个人信息图文详解(2).扫描过后显示如下:
   微信公众平台开发教程①获取用户Openid及个人信息图文详解

附录:

(1).提示信息

①. 微信公众号开发文档中有说明,需要访问的网站域名端口为 80,需要注意一下,当然多数默认为 80端口开放,如果没有外网可访问的网站,建议使用新浪 SAE,在此我使用的是公司服务器直接测试

. 因为微信开发的信息更新,获取我们网上获取的信息已过时,所以建议学会方法后面的操作参考开发文档也不是难事

. 在此提供两个参考网站,个人觉得除了部分时间久远,还是很详细的,尤其对于SAE,以及开发文档的解释都值得一读

(2).文章推荐

推荐新篇(简洁化)微信开发集成类的使用

(3).源代码下载 >>>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
E路文章系统PHP
Dec 11 PHP
php 生成唯一id的几种解决方法
Mar 08 PHP
php递归使用示例(php递归函数)
Feb 14 PHP
php缩放gif和png图透明背景变成黑色的解决方法
Oct 14 PHP
php中curl使用指南
Feb 05 PHP
php采用session实现防止页面重复刷新
Dec 24 PHP
yii分页组件用法实例分析
Dec 28 PHP
PHP获取文本框、密码域、按钮的值实例代码
Apr 19 PHP
yii2.0整合阿里云oss上传单个文件的示例
Sep 19 PHP
php处理多图上传压缩代码功能
Jun 13 PHP
thinkPHP5框架导出Excel文件简单操作示例
Aug 03 PHP
PHP pthreads v3使用中的一些坑和注意点分析
Feb 21 PHP
微信公众平台开发教程⑥ 微信开发集成类的使用图文详解
Apr 10 #PHP
微信公众平台开发教程②微信端分享功能图文详解
Apr 10 #PHP
ThinkPHP框架整合微信支付之刷卡模式图文详解
Apr 10 #PHP
laravel配置Redis多个库的实现方法
Apr 10 #PHP
在Ubuntu 18.04上安装PHP 7.3 7.2和7.0的方法
Apr 09 #PHP
微信公众号实现扫码获取微信用户信息(网页授权)
Apr 09 #PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式二图文详解
Apr 09 #PHP
You might like
全国FM电台频率大全 - 31 新疆维吾尔族自治区
2020/03/11 无线电
php中实现记住密码自动登录的代码
2011/03/02 PHP
合格的PHP程序员必备技能
2015/11/13 PHP
PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)
2016/09/11 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
2019/10/16 PHP
到处都是jQuery选择器的年代 不了解它们的性能,行吗
2012/06/18 Javascript
js自执行函数的几种不同写法的比较
2012/08/16 Javascript
JavaScript获取和设置CheckBox状态的简单方法
2013/07/05 Javascript
NodeJS制作爬虫全过程
2014/12/22 NodeJs
jQuery实现页面滚动时动态加载内容的方法
2015/03/20 Javascript
基于javascript实现简单的抽奖系统
2020/04/15 Javascript
AngularJS 单元测试(二)详解
2016/09/21 Javascript
手机浏览器 后退按钮强制刷新页面方法总结
2016/10/09 Javascript
快速解决js中window.location.href不工作的问题
2016/11/02 Javascript
js实现符合国情的日期插件详解
2017/01/19 Javascript
JS文件/图片从电脑里面拖拽到浏览器上传文件/图片
2017/03/08 Javascript
iscroll动态加载数据完美解决方法
2017/07/18 Javascript
Node.js动手撸一个静态资源服务器的方法
2019/03/09 Javascript
js console.log打印对象时属性缺失的解决方法
2019/05/23 Javascript
js实现简单放大镜效果
2020/03/07 Javascript
Django的分页器实例(paginator)
2017/12/01 Python
Python函数中不定长参数的写法
2019/02/13 Python
Python地图绘制实操详解
2019/03/04 Python
python+os根据文件名自动生成文本
2019/03/21 Python
Python多线程threading模块用法实例分析
2019/05/22 Python
如何为Python终端提供持久性历史记录
2019/09/03 Python
使用tqdm显示Python代码执行进度功能
2019/12/08 Python
pip install命令安装扩展库整理
2021/03/02 Python
施华洛世奇波兰官网:SWAROVSKI波兰
2019/06/18 全球购物
英国设计师珠宝网站:Joshua James Jewellery
2020/03/01 全球购物
澳大利亚领先的内衣店:Bendon Lingerie澳大利亚
2020/05/15 全球购物
亲属关系公证书
2014/04/08 职场文书
个人三严三实对照检查材料思想汇报
2014/09/22 职场文书
2014幼儿园家长工作总结
2014/11/10 职场文书
幼师自荐信范文(2016推荐篇)
2016/01/28 职场文书
Python使用UDP实现720p视频传输的操作
2021/04/24 Python