all()); $server = WechatOP::server(); v('start_setmessage'); if(env('DEVELOP_MODE') == 'local'){ v('local_test'); $message = $this->get_fake_data(); $res = $this->deal_callback($message); }else{ v('online_test'); $server->setMessageHandler(function($message) { $res = $this->deal_callback($message); }); } v('receive_tickt_end'); return $server->serve(); } function deal_callback($message){ v('thirdwx_deal_callback');v($message); v('InfoType:'.$message->get('InfoType')); switch ($message->get('InfoType')) { case "component_verify_ticket": v('save_ticket:'.$message->get('ComponentVerifyTicket')); // 保存开放平台 ticket $save_ticket_res = app('wechat_op')->saveTicket($message->get('ComponentVerifyTicket')); v('save_ticket_res');v($save_ticket_res); break; case "unauthorized": // 公众号取消授权记录 $appid = $message->get('AuthorizerAppid'); v('gzh_unauthorized:'.$appid); parent::__construct($appid); $this->WechatApi->cancel_oauth_official_account($appid); break; case "authorized": // 公众号授权 v('gzh_authorized'); break; default: break; } } // {"\u0000*\u0000items":{ // "AppId":"wx46d3ea76723d890c","CreateTime":"1506602969","InfoType":"component_verify_ticket","ComponentVerifyTicket":"ticket@@@MX6T2u23fgQ6BWYyU5dteplNwP_Nu-HEjoVhzmjSIKeTNu8dTVUfdCjdJqVGX4uF5ODSJKJMRqH1blDFUYgpSw"} // } function get_fake_data(){ $message = new \stdClass(); $test = 'ticket'; if($test == 'ticket'){ $message->InfoType = 'EVENT_UNAUTHORIZED'; $message->AuthorizationCode = '200'; } return $message; } }