php版微信公众账号第三方管理工具开发简明教程


Posted in PHP onSeptember 23, 2016

本文讲述了php版微信公众账号第三方管理工具开发方法。分享给大家供大家参考,具体如下:

最近在捣鼓微信公共平台提供的API,等确实一个获取用户信息的API。

所以没有办法,只能自己去获取,手动填写当然可以解决问题,当然编程不就是为了让生活变的更简单么?

当然,远程抓取微信公共平台数据的想法就油然而生,当然第一个想到了CURL。

CURL可以远程提交表达,我感觉微信是提议让我们怎么的,只要不是恶意刷接口,就不会出现验证码。

主要注意的几个问题:

① 远程登录接口是时候的HTTPS协议。
② 登录成功后页面有跳转。
③ 返回的HTML页面是可以直接输出的。

下面展示了一个CURL的具体写法

//微信远程登录绑定账号
  public function Curl_login($username,$pwd){
  $config_token = "XiaoDengPHP";
  $pwd = md5($pwd);
  $url = "https://mp.weixin.qq.com/cgi-bin/login?lang=zh_CN";
  $postArray = array("username=".$username,"pwd=".$pwd,"imgcode=","f=json");
  $fields = implode("&", $postArray);
  $filedir = $_SERVER['DOCUMENT_ROOT']."/Cookies";
  $cookie_file = $filedir."/cookie.txt";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1); //表示是https协议提交
  curl_setopt($ch, CURLOPT_HEADER, 0); //不返回header部分
  curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)");
  curl_setopt($ch, CURLOPT_POST, 1);
  curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
  curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file); //生产Cookies并保存在指定目录下
  curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //将curl_exec()获取的信息以文件流的形式返回,而不是直接输出。
  curl_setopt($ch, CURLOPT_REFERER,"https://mp.weixin.qq.com/cgi-bin/login?lang=zh_CN"); //跳转指向
  $result = curl_exec($ch);
  return json_decode($result);
  // 关闭CURL会话
  curl_close($ch);
}

上面这个方法就实现了,远程登录微信公共平台,接下来的事,就是去让账号变成开发者模式,一样的CURL。

注意这次的curl要带上cookies而不是生产cookies

重点代码在于验证服务器的相应,你需要设置一个服务器的连接和一个token

public function auth($token)
{
    $data = array(
    $_GET['timestamp'],
    $_GET['nonce'],
    $token);
    $sign = $_GET['signature'];
    sort($data);
    $signature = sha1(implode($data));
    if($signature === $sign){
       echo ($_GET['echostr']);
     exit;
    }else{
     return false;
    }
}

这样如果开通成功了,应该会返回一个MES=302的json数据和一个微信平台认证的token的信息。

只要你细心,你就会发现,微信连接里面TOKEN是一个动态变化的,但有是在一段时间内不变的。

所以你需要这个token来构造URL,来获取其他页面信息。

但开发现过程中,你一定遇到一个很崩溃的问题。

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

PHP 相关文章推荐
php上的memcache和memcached两个pecl库
Mar 29 PHP
php删除页面记录 同时刷新页面 删除条件用GET方式获得
Jan 10 PHP
php5.5中类级别的常量使用介绍
Oct 02 PHP
thinkphp模板用法和内容输出实例
Nov 28 PHP
PHP中$this和$that指针使用实例
Jan 06 PHP
php数组分页实现方法
Apr 30 PHP
phpstudy默认不支持64位php的解决方法
Feb 20 PHP
php基于自定义函数记录log日志方法
Jul 21 PHP
PHP Socket网络操作类定义与用法示例
Aug 30 PHP
php处理抢购类功能的高并发请求
Feb 08 PHP
php菜单/评论数据递归分级算法的实现方法
Aug 01 PHP
ThinkPHP 5 AJAX跨域请求头设置实现过程解析
Oct 28 PHP
php版微信公众平台接口参数调试实现判断用户行为的方法
Sep 23 #PHP
php使用CURL模拟GET与POST向微信接口提交及获取数据的方法
Sep 23 #PHP
php版微信公众平台之微信网页登陆授权示例
Sep 23 #PHP
中高级PHP程序员应该掌握哪些技术?
Sep 23 #PHP
php利用递归实现删除文件目录的方法
Sep 23 #PHP
php版微信公众平台开发之验证步骤实例详解
Sep 23 #PHP
php分页原理 分页代码 分页类制作教程
Sep 23 #PHP
You might like
关于php程序报date()警告的处理(date_default_timezone_set)
2013/10/22 PHP
php实现用于删除整个目录的递归函数
2015/03/16 PHP
php实现网页缓存的工具类分享
2015/07/14 PHP
Firefox/Chrome/Safari的中可直接使用$/$$函数进行调试
2012/02/13 Javascript
让jQuery与其他JavaScript库并存避免冲突的方法
2013/12/23 Javascript
控制input输入框中提示信息的显示和隐藏的方法
2014/02/12 Javascript
JS实现的N多简单无缝滚动代码(包含图文效果)
2015/11/06 Javascript
输入法的回车与消息发送快捷键回车的冲突解决方法
2016/08/09 Javascript
详解js界面跳转与值传递
2016/11/22 Javascript
JavaScript下拉菜单功能实例代码
2017/03/01 Javascript
Vue form 表单提交+ajax异步请求+分页效果
2017/04/22 Javascript
vue编译打包本地查看index文件的方法
2018/02/23 Javascript
vue项目动态设置页面title及是否缓存页面的问题
2018/11/08 Javascript
如何通过setTimeout理解JS运行机制详解
2019/03/23 Javascript
VueJs里利用CryptoJs实现加密及解密的方法示例
2019/04/29 Javascript
node使用mysql获取数据库数据中文乱码问题的解决
2019/12/02 Javascript
javascript如何使用函数random来实现课堂随机点名方法详解
2020/07/28 Javascript
vue实现简单加法计算器
2020/10/22 Javascript
linux下python抓屏实现方法
2015/05/22 Python
python提取页面内url列表的方法
2015/05/25 Python
Python数据结构与算法之完全树与最小堆实例
2017/12/13 Python
Python实现感知机(PLA)算法
2017/12/20 Python
使用Python通过win32 COM打开Excel并添加Sheet的方法
2018/05/02 Python
对Python+opencv将图片生成视频的实例详解
2019/01/08 Python
CentOS7下安装python3.6.8的教程详解
2020/01/03 Python
使用 Python ssh 远程登陆服务器的最佳方案
2020/03/06 Python
详解Open Folder as PyCharm Project怎么添加的方法
2020/12/29 Python
深入理解css属性的选择对动画性能的影响
2016/04/20 HTML / CSS
英国最大的经认证的有机超市:Planet Organic
2018/02/02 全球购物
PHP开发工程师面试问题集锦
2012/11/01 面试题
高一历史教学反思
2014/01/13 职场文书
安全事故检讨书
2014/01/18 职场文书
致400米运动员广播稿
2014/02/07 职场文书
小学体育跳绳课教学反思
2016/02/16 职场文书
《春酒》教学反思
2016/02/22 职场文书
教你用python实现一个无界面的小型图书管理系统
2021/05/21 Python