• 微信小程序一直保持登陆状态


    把标记红色的备注修改即可

    JS文件:(可以放在app.js中)

    // 登录
        wx.login({
          success: res => {
            // 发送 res.code 到后台换取 openId, sessionKey, unionId
            wx.request({
              url: "http://127.0.0.7/api/Login/login",  //修改请求地址
              data: { code: res.code },
              header: {
                'content-type': 'application/json'
              },
              method: "GET",
              success(res) {
                wx.request({
                  url: that.link + "Login/setuser",
                  data: {
                    openid: res.data.openid
                  },
                  header: {
                    'content-type': 'application/json'
                  },
                  success(res) {
              //如果有该用户,把用户信息放到公共数组中
    if (res.data){ that.globalData.userInfo = res.data  //红色的可以更改为别的数组,需要先定义 } }, }) }, }) } })

     php文件:(红色标记为申请的小程序后台中,开发中有appid和secret)

    /*获取用户唯一标识*/
        public function login(){
            $code=Request::param('code');
            $url="https://api.weixin.qq.com/sns/jscode2session?appid=wx69b37be5******&secret=b6ed8d48484522da769******&js_code=".$code."&grant_type=authorization_cod";
            $token = json_decode($this->curl_get($url));
            return json($token);
        }
    
      /*这里是把openid发送过来,查找数据库中有没有该用户信息,如果没有就添加该用户信息,有就读取用户信息*/
    /*是否有用户信息*/ public function setuser(){ $data=Request::param(); $user=User::where('account',$data['openid'])->find();
         if(!$user){
           /*以下写需要添加用户信息的逻辑*/
         }else{
          return json($user);
         }
    }/*往微信发送信息,获取唯一标识 后台调用 避免暴露 信息*/ function curl_get($url,&$httpCode = 0){ $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); /*不做证书效验,部署在linux环境下请改为true*/ curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,10); $file_contents = curl_exec($ch); $httpCode = curl_getinfo($ch,CURLINFO_HTTP_CODE); curl_close($ch); return $file_contents; }
  • 相关阅读:
    win7下new出的内存默认是无执行权限的
    【转】 C++获得系统时间,以及1970年1月1日到现在的毫秒数
    【收藏】获取系统安装软件(vc++源码)
    opencv编译以及测试
    Vim命令合集
    在SSMS中打开DTS Package
    秋日的阳光
    又一位部门同事离职
    不要让你的孩子成为留守儿童,更不让你的父母成为空巢老人
    又将有一位同事离职
  • 原文地址:https://www.cnblogs.com/zyfeng/p/12092750.html
Copyright © 2020-2023  润新知