ホームページ 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 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)