首頁 php教程 php手册 微信公共账号第三方管理工具开发(一)

微信公共账号第三方管理工具开发(一)

May 25, 2016 pm 04:47 PM

最近在捣鼓微信公共平台提供的API,等确实一个获取用户信息的API。所以没有办法,只能自己去获取,手动填写当然可以解决问题,当然编程不就是为了让生活变的更简单么?

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

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

主要注意的几个问题

1.远程登录接口是时候的HTTPS协议。

2.登录成功后页面有跳转。

3.返回的HTML页面是可以直接输出的。

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

<?php
//微信远程登录绑定账号
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[&#39;DOCUMENT_ROOT&#39;] . "/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

<?php
public function auth($token) {
    $data = array(
        $_GET[&#39;timestamp&#39;],
        $_GET[&#39;nonce&#39;],
        $token
    );
    $sign = $_GET[&#39;signature&#39;];
    sort($data);
    $signature = sha1(implode($data));
    if ($signature === $sign) {
        echo ($_GET[&#39;echostr&#39;]);
        exit;
    } else {
        return false;
    }
}
?>
登入後複製

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

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

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

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


本文地址:

转载随意,但请附上文章地址:-)

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1319
25
PHP教程
1269
29
C# 教程
1248
24