uniapp

login() {
    let _this = this;
    let user = uni.getStorageSync('user'); //读缓存
    if (user.openid == "" || user == '' || user == null) {
        uni.getUserProfile({
            desc: '获取微信用户的昵称与头像',
            success: function(resp) {
                let nickName = resp.userInfo.nickName;
                let avatarUrl = resp.userInfo.avatarUrl;
                _this.$http.http("POST", "/index/login/logins", {
                    'nickName': nickName,
                    'avatarUrl': avatarUrl,
                }).then(req => {
                    uni.setStorageSync('user', req.data.data); //存缓存
                })
            }
        });
        return false;
    } else {
		return true;
    }
}

 

 tp6

public function login(Request $request){
    $data = $request->param();
    $code = $data['code'];//前端过来的code
    $appid = "wx7954c09165006e62";
    $appSecret = "66a2bafa59cd61576d22acaaa795e25d";
    $url = "https://api.weixin.qq.com/sns/jscode2session"."?appid={$appid}&secret=       {$appSecret}&js_code={$code}&grant_type=authorization_code";
        $urlData = $this->curl_get($url);
        return json(['code'=>200, 'data'=>$urlData, 'message' => "操作成功"]);
    }
    /**
     * 发起get请求,向微信获得openid
     * */
public function curl_get($url){
    $getUrl = file_get_contents($url);
    $data = json_decode($getUrl, true);
    return $data;
}

    /**
     * 登录
     * */
public function logins(Request $request){
    $all = $request->param();
    $uset = User::where('openid',$all['openid'])->select();
    if(empty($uset[0]->id)){//空值才入库
        $user = new User();
        $user->openid = $all['openid'];
        $user->avatarUrl = $all['avatarUrl'];
        $user->nickName = $all['nickName'];
        $user->time = date("Y-m-d H:i:s",time());
        $user->save();
        $uset = User::where('openid',$all['openid'])->find();
    }
    return json(['code'=>200,'data'=>$uset,'message'=>'操作成功']);
}

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐