PHP实现微信小程序授权登录(示例)

    public function login(){//接收参数$code = input('code'); //code码$nickName = input('nickname'); //微信昵称$avatarUrl = input('avatar'); //微信头像//验证参数if (empty($code) || empty($nickName) || empty($avatarUrl)){return json(['status'=>500,'msg'=>'参数不能为空']);}//自己到微信公众平台获取$appid = ' ';$secret = ' ';//获取openid$url = "https://api.weixin.qq.com/sns/jscode2session?appid={$appid}&secret={$secret}&js_code={$code}&grant_type=authorization_code";$userInfo = json_decode(file_get_contents($url),true);if (empty($userInfo['openid'])) $this->error('登陆失败,'.$userInfo['errmsg'],'',$userInfo['errcode']); //存储数据$userInfo['nickname'] = $nickName;$userInfo['avatar'] = $avatarUrl;$userInfo['createtime'] = time();$userInfo['updatetime'] = time();//根据获取的openid 来查看数据库 有的话更新 session_key 没有的话添加$model = new Member();$data = $model->where('openid',$userInfo['openid'])->find();if ($data){//存在数据 更新$model->where('openid',$userInfo['openid'])->update(['session_key'=>$userInfo['session_key']]);//获取用户id$userInfo['user_id'] = $data['id'];$token =  signToken($userInfo['user_id']);}else{//不存在将用户信息添加入库 获取自增的id$token =  signToken($userInfo['user_id']);$userInfo['user_id'] = $model->insertGetId($userInfo);}$this->success('登陆成功',['token'=>$token],'200');}

PHP实现微信小程序授权登录相关推荐

  1. 微信小程序授权登录 组件的封装

    微信小程序授权登录 组件的封装 新建components文件 写wxml文件 wxss部分 js部分 json引用 页面使用 页面js 授权登录 流程如下: 因为多个页面功能需要登录状态 所以做了个组 ...

  2. SpringBoot微信小程序授权登录

    SpringBoot微信小程序授权登录 一.appId 1.1.自己是管理者:微信公众平台,申请或登录自己的微信小程序,在开发者管理中即可看到 2.2.自己是开发者:让管理员将自己加入到小程序开发者管 ...

  3. uniapp微信小程序授权登录和获取微信绑定的手机号码

    uniapp微信小程序授权登录和获取微信绑定的手机号码 弹出授权的弹框 <view class="weixinOk" @tap="getUserProfile&qu ...

  4. 微信小程序授权登录取消授权重新授权处理方法 附可用代码

    微信小程序授权登录基本是小程序的标配了,但是官方的demo,取消授权后,就不能再重新点击登录,除非重新加载小程序才可以,这下怎么办? 我们可以先在首页引导用户点击,然后跳转到一个新的页面,在新的页面进 ...

  5. 新版微信小程序授权登录流程及问题汇总(getUserProfile)

    问题来源:前不久去面试的时候有面试官问我你有自己的博客啥的吗?只能很尴尬的说没有.其实一直想有一个属于自己的博客啥的去记录自己在开发过程中遇到的问题,正好现在微信小程序比较流行,就花了两天自己搞了一个 ...

  6. SpringCloud 微信小程序授权登录 获取openId SessionKey【SpringCloud系列13】

    SpringCloud 大型系列课程正在制作中,欢迎大家关注与提意见. 自我提升方法推荐:神奇的早起 早上 5:00 -5:20 起床刷牙 5:30-6:00 晨练(跑步.跳绳.骑自行车.打球等等) ...

  7. 微信小程序授权登录第一次总是失败,第二次登录便正常了

    微信小程序授权登录第一次总是失败,第二次登录便正常了 错误流程 调用 用户点击授权用户信息按钮 ===> 调用wx.login( )生成code发送给后台生成session_key解密 ===& ...

  8. 微信小程序授权登录报错encryted_data或iv不合法,前端坑^-^~~

    微信小程序授权登录原来用的wx.getUserInfo(),在用户未授权过的情况下调用此接口,将不再出现授权弹窗, 会直接进入 fail 回调(详见<公告>).在用户已授权的情况下调用此接 ...

  9. 基于Uniapp+SpringBoot实现微信小程序授权登录

    手把手教你做微信小程序授权登录交互 一.uni.login请求临时code 二.uni.request向后台交换数据 三.源代码 前台:在GetUserInfo中添加接口 后台:SpringBoot后 ...

  10. 微信小程序授权登录界面

    微信小程序授权登录界面 原先用的 wx.getUserInfo(Object object) ,现已改革 现用的 wx.getUserProfile(Object object),获取用户信息.每次请 ...

最新文章

  1. jdbc报Incorrect string value: '\xF0\x9F\xA4\x97' for column
  2. 现代密码学4.2--消息验证码/MAC
  3. 农行计算机安全制度,制度体系之农行 数据中心计算机安全检查实施细则.doc
  4. 约瑟夫问题pascal程序
  5. 分组中查询不符合条件的组
  6. 《PHP和MySQL Web开发从新手到高手(第5版)》一一第1章 安装
  7. 开学前要多为孩子健康做准备
  8. java tostring的用处_JAVA的tostring()方法的作用是什么呢?
  9. 内部服务器如何提供访问服务
  10. 一个C++工程CPU占用100%问题的排查
  11. EAS 表格、查询方案存储表
  12. 【IT】使用gdb调试code
  13. Joining Byte Blocks(哈希+带花树)
  14. 参考文献引用格式实例
  15. python 豆瓣电影top250_「豆瓣电影top250」豆瓣电影TOP250抓取 - seo实验室
  16. 【UCOSIII操作系统】硬件初始化篇(1)硬件初始化以及开始运行系统
  17. 中国的铁路订票系统在世界上属于什么水平?
  18. linux 密码字典生成,Linux下的字典生成工具Crunch 创造自己的专属字典
  19. [分享]从许三多精神看企业管理
  20. 软文营销文案写作如何用创意编制想象力“城堡”

热门文章

  1. python 数组比较
  2. 28 APRIL 2021 VOL 6, ISSUE 53
  3. Pixel XL刷机ROOT教程
  4. 【一起说说简历和面试的那些事儿】
  5. 理解js中的同步和异步
  6. linux cpu核数查看
  7. JS 获取元素内容方法
  8. datetimeformat和jsonformat的区别
  9. Python代码导入出EXCEL数据
  10. python 中i++、逻辑表达式