找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索本站精品资源

首页 教程频道 小程序开发 查看内容

Thinkphp5微信小程序获取用户信息接口调用笔记

作者:模板之家 2018-1-2 08:56 3615人关注

首先在官网下载示例代码, 选php的, 这里有个坑 官方的php文件,编码是UTF-8+的, 所以要把文件改为UTF-8 然后在Thinkphp5 extend文件夹下建立Wxxcx命名空间,把官方的几个类文件放进去(这里要注意

首先在官网下载示例代码, 选php的,

这里有个坑 

官方的php文件,编码是UTF-8+的, 所以要把文件改为UTF-8

 

然后在Thinkphp5 extend文件夹下建立Wxxcx命名空间,把官方的几个类文件放进去(这里要注意文件夹名, 命名空间名, 类名的, 大小写,一定要一样,官方的文件名和类名大小写不一样)

 

 

 
 
 
 
 
然后是自己的thinkphp接口代码:
 
[php] view plain copy
 
  1. <?php  
  2. /** 
  3.  * Created by PhpStorm. 
  4.  * User: leeoo 
  5.  * Date: 2017/9/14 0014 
  6.  * Time: 10:43 
  7.  */  
  8.   
  9. namespace app\api\controller\v1;  
  10.   
  11.   
  12. use think\Loader;  
  13. use think\Request;  
  14. use Workerman\Protocols\Http;  
  15. use Wxxcx\WXBizDataCrypt;  
  16. use first\second\Foo;  
  17.   
  18. class Index  
  19. {  
  20.     public function index($id)  
  21.     {  
  22.   
  23.         return json(['msg' => $id]);  
  24.     }  
  25.   
  26.     public function dologin()  
  27.     {  
  28.         $code = Request::instance()->param('code');  
  29.         $encryptedData = Request::instance()->param('encryptedData');  
  30.         $iv = Request::instance()->param('iv');  
  31.   
  32.         $appid = "你的小程序appid";  
  33.         $secret = "你的小程序secret";  
  34.         //appid={$appid}&secret={$secret}&js_code={$code}&grant_type=authorization_code  
  35.         $param = array(  
  36.             'appid' => $appid,  
  37.             'secret' => $secret,  
  38.             'js_code' => $code,  
  39.             'grant_type' => 'authorization_code'  
  40.         );  
  41.     //http函数为封装的请求函数  
  42.         $res = http("https://api.weixin.qq.com/sns/jscode2session"$param'post');  
  43.   
  44.         $arr = json_decode($res, true);  
  45.   
  46.         $result = $this->wxdecode($encryptedData$iv$arr['session_key'], $appid);  
  47.   
  48.         //return json($result);  
  49.         if ($result) {  
  50.             return json(['code' => 1]);  
  51.         } else {  
  52.             return json(['code' => -1]);  
  53.         }  
  54.   
  55.     }  
  56.   
  57.     public function wxdecode($encryptedData$iv$sessionKey$appid)  
  58.     {  
  59.         //Loader::import('Wxxcx\WXBizDataCrypt', EXTEND_PATH);  
  60.         $pc = new WXBizDataCrypt($appid$sessionKey);  
  61.         $data = null;  
  62.         $errCode = $pc->decryptData($encryptedData$iv$data);  
  63.         //echo $data;  
  64.         //return json(['data'=>$data]);  
  65.         $data = json_decode($data);  
  66.   
  67.         if ($errCode == 0) {  
  68.             

路过

雷人

握手

鲜花

鸡蛋
原作者: 模板之家 来自: 网络收集

全部回复(0)