微信小程序 自动登陆PHP源码实例(源码下载)

网友投稿 267 2023-05-16


微信小程序 自动登陆PHP源码实例(源码下载)

微信小程序 自动登陆php源码实例

app.js

初始化APP自动登陆

    您也可以在任何地方进行用户登陆验证 

    用法:首先在js文件中定义 var app = getApp(); app.getUserDataToken();

App({

onLaunch: function () {

/*初始化APP自动登陆

* 您也可以在任何地方进行用户登陆验证

*用法:首先在js文件中定义 var app = getApp(); app.getUserDataToken();

*/

this.getUserDataToken();

},

getUserDataToken:function(){

var that = this;

//获取用户缓存token 此token是服务器作为用户唯一验证的标识,具体请看后端代码

var utoken=wx.getStorageSync("utoken");

wx.login({

success: function (res) {

var code=res.code;

wx.getUserInfo({

success: function (res) {

wx.request({

//用户登陆URL地址,请根据自已项目修改

url: 'https://66018954.qcloud.la/WxApp/index.php/UserApi/userAuthSlogin',

method:"POST",

data: {

utoken:utoken,

code: code,

encryptedData:res.encryptedData,

iv:res.iv

},

fail:function(res){

},

success: function(res) {

var utoken=res.data.utoken;

//设置用户缓存

wx.setStorageSync("utoken",utoken);

}

})

}

})

}

})

}

})

php代码:

public function userAuthSlogin(){

$content = file_get_contents ( 'php://input' );

$content=json_decode($content,true);

$utoken=$content["utoken"];

if(!empty($utoken)&&S($utoken)){

$result["success"]=1;

$result['utoken']=$utoken;

echo json_encode($result);

exit();

}

$code=$content["code"];

$encryptedData=$content["encryptedData"];

$iv = $content['iv'];

/*获取session_key*/

$s_result=$this->getSession($code);

$WxData = new WXBizDataCrypt($s_result['appid'],$s_result['session_key']);

/*解密用户数据*/

$errCode = $WxData->decryptData($encryptedData, $iv, $user_data);

$http://wxap_key = md5(uniqid(md5(microtime(true)),true));

$result=array();

if($errCode==0){

$user_data=json_decode($user_data,true);

$result["success"]=1;

$result['utoken']=$wxap_key;

$user_id = $this->wxUserAdd($user_data);

if($user_id < 1 || empty($user_id)){

$result["success"]=-1;

$result['errCode']=0;

$result['msg']="获取用户信息出错!";

echo json_encode($result);

exit();

}

$user_data['uid']=$user_id;

S($wxap_key,$user_data,7200);

echo json_encode($result);

exit();

}else{

$result["success"]=-1;

$result['errCode']=$errCode;

$result['msg']="获取用户信息出错!";

echo json_encode($result);

exit();

}

}

项目下载:http://xiazai.jb51.net/201705/yuanma/zddl(jb51.net).rar


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:H5上传本地图片并预览功能
下一篇:Spring boot中mongodb的使用
相关文章

 发表评论

暂时没有评论,来抢沙发吧~