1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- <?php
- namespace App\Http\Controllers\Api;
- use App\Service\Weixin\WeixinService;
- use App\Service\Weixin\WxEmployeeService;
- use Illuminate\Http\Request;
- class WeixinController extends BaseController
- {
- //开发者密码:
- /**
- * 用于微信token验证,全部通用,前提token都为qingyao
- * @param Request $request
- * @return void
- */
- public function weixin(Request $request)
- {
- file_put_contents('1.txt',json_encode($request->all()));
- // die('adsds');
- // $data = json_decode('{"signature":"fe04bfbb92a1c073e9f0829d3c4e48e1b40403aa","echostr":"5841396639871246203","timestamp":"1695188315","nonce":"1459788183"}',true);
- $data = $request->all();
- $signature = $data["signature"];
- $timestamp = $data["timestamp"];
- $nonce = $data["nonce"];
- $token = 'qingyao';
- $tmpArr = array($token, $timestamp, $nonce);
- sort($tmpArr, SORT_STRING);
- $tmpStr = implode( $tmpArr );
- $tmpStr = sha1( $tmpStr );
- // var_dump($tmpStr);
- // var_dump($signature);die;
- if( $tmpStr == $signature ){
- echo $data['echostr'];die;
- }else{
- die('fail');
- }
- }
- public function setWebHook(Request $request){
- $service = new WeixinService();
- list($status,$msg) = $service->setWebHook($request->all());
- return $this->json_return($status,$msg,'');
- }
- /**
- * 重定向获取unionid
- * @param Request $request
- * @return void
- */
- public function getUnionid(Request $request){
- $service = new WeixinService();
- $res = $service->getUnionid($request->all());
- }
- /**
- * 获取openid
- * @param Request $request
- * @return void
- */
- public function getOpenid(Request $request){
- $service = new WeixinService();
- list($status,$data) = $service->getOpenid($request->all());
- if ($status) {
- return $this->json_return(200, '', $data);
- } else {
- return $this->json_return(201, $data);
- }
- }
- public function setUser(Request $request)
- {
- $service = new WxEmployeeService();
- list($status, $data) = $service->setUser($request->all());
- if ($status) {
- return $this->json_return(200, '', $data);
- } else {
- return $this->json_return(201, $data);
- }
- }
- public function login(Request $request)
- {
- $service = new WxEmployeeService();
- list($status, $data) = $service->login($request->all());
- if ($status) {
- return $this->json_return(200, '', $data);
- } else {
- return $this->json_return(201, $data);
- }
- }
- }
|