使用PHP怎么实现一个微信公众号扫码模拟登录功能

  介绍

使用PHP怎么实现一个微信公众号扫码模拟登录功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

<强>主要流程如下

1,先访问https://mp.weixin.qq.com/模拟登录,进入二维码页面
2,带着返回的饼干下载二维码。程序后台一直而循环,等待扫描消息。
3,打开下载的二维码,微信扫码,登录成功,获取令牌和饼干,然后后面就可以自由发挥了。

<强>供上代码。

class  WeiSendAuto   {//才能- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - LOGIN 开始   private 才能;_apis 美元;=,(   ,,,“host",,,,,=祝辞,“https://mp.weixin.qq.com"   ,,,“login",,,,,=祝辞,“https://mp.weixin.qq.com/cgi-bin/bizlogin?action=startlogin"   ,,,“qrcode",,,,=祝辞,“https://mp.weixin.qq.com/cgi-bin/loginqrcode?action=getqrcode&对位;m=4300“,   ,,,“loginqrcode",,=祝辞,“https://mp.weixin.qq.com/cgi-bin/loginqrcode?action=ask&令牌=和lang=zh_CN& f=json& ajax=1“,   ,,,“loginask",,,=祝辞,“https://mp.weixin.qq.com/cgi-bin/loginqrcode?action=ask&令牌=和lang=zh_CN& f=json& ajax=1,随机=?   ,,,“loginauth",,,=祝辞,“https://mp.weixin.qq.com/cgi-bin/loginauth?action=ask&令牌=和lang=zh_CN& f=json& ajax=1“,   ,,,“bizlogin",,,=祝辞,“https://mp.weixin.qq.com/cgi-bin/bizlogin?action=login& lang=zh_CN"   )才能;   private 才能;_redirect_url 美元;=,““   private 才能;_key 美元;,,,,,=,““   private 才能;function  _getCookieFile () {   ,,,return  WEI_UPLOAD_PATH !”cookie_ {$ this→_key} .text";   ,,}   private 才能;function  _getSavePath () {   ,,,return  WEI_UPLOAD_PATH。$ this→_qrcodeName ();   ,,}   private 才能;function  _qrcodeName () {   ,,,return “qrcode_ {$ this→_key} .png";   ,,}   private 才能;function  _log (msg) {   ,,,的日志:记录(“[微信调度:“.date (“Y-m-d  H:我:s") !”),======:,{$味精}“);   ,,}   public 才能;function  getToken () {   ,,,return 跑龙套:getCache (“token_ {$ this→_key}“);   ,,}   public 才能;function  setToken(令牌){   ,,,,跑龙套:setCache (“token_ {$ this→_key}“,令牌美元);   ,,}   public 才能;function  init(选项){   ,,,如果(!收取($选项(“key"))) {   ,,,,,死(“Key  is 零!“);   ,,,}   ,,,这个→美元_key ,,=,,美元选项(“key");   ,,,如果($ this→getToken ()) {   ,,,,,回声(“HAS  Token  !“);   ,,,,,返回;   还有,,,}{   ,,,,,//尼玛,先要获取首页! ! !   ,,,,,这个→美元获取(“https://mp.weixin.qq.com/",““,“text");   ,,,,,这个→美元_log (“start 登录! !“);   ,,,,,这个→美元start_login(选项);   ,,,}   ,,}   private 才能;function  start_login(选项){   _res 美元,,,,,,,=,$ this→_login(选项(“account"),美元选项(“password"));   ,,,如果(! $ _res [“status"]) {   ,,,,,这个→美元_log ($ _res [“info"]);   ,,,,,返回;   ,,,}   ,,,//保存二维码   ,,,这个→美元_saveQRcode ();   _ask_api 美元,,,,,,,=,,$ this→_apis (“loginask");   ,,,美元_input [“refer"],=,, $ this→_redirect_url;   _index 美元,,,,,,,,=,,1;   ,,,,(真正的){/*,,,,,,如果(_index>美元;60){   ,,,,,,,休息;   ,,,,,}*/,,,,,_res 美元;,,,=,,这→美元获取(_ask_api。这→美元getWxRandomNum (), _input美元);   ,,,,,_status 美元;,,=,,_res美元(“status");   ,,,,,如果(_status==1美元){   ,,,,,,,如果(_res美元(“user_category")==1) {   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

使用PHP怎么实现一个微信公众号扫码模拟登录功能