微信小程序用户授权,以及判断登录是否过期的方法


Posted in Javascript onMay 10, 2019

初始界面:

微信小程序用户授权,以及判断登录是否过期的方法

判断用户是否过期(如果未过期则重新登录):

微信小程序用户授权,以及判断登录是否过期的方法

获取用户信息:

微信小程序用户授权,以及判断登录是否过期的方法

获取用户的信息并在前台显示:

微信小程序用户授权,以及判断登录是否过期的方法

 

主要实现两个功能:

①判断登录是否过期,如果过期则就重新登录,如果没过期就提示未过期

②获取用户的信息,并在前台显示

index.wxml

<button bindtap="login">登录</button>
<button bindtap="checksession">登录是否过期</button>
<button open-type="getUserInfo" bindgetuserinfo="info">点击授权</button>
<text>{{city}}</text>
<text>{{country}}</text>
<text>{{nickName}}</text>
<text>{{province}}</text>

index.js

//index.js
//获取应用实例
const app = getApp()
 
Page({
 data: {
  city:'',
  country:'',
  nickName:'',
  province:''
 },
 //发起http请求
 login:function(){
  wx.login({
   success:function(res){
    console.log(res.code)
    //发送请求
    wx.request({
     url: '自己的域名', //仅为示例,并非真实的接口地址
     data: {
      code:res.code
     },
     header: {
      'content-type': 'application/json' // 默认值
     },
     success(res) {
      console.log(res)
     }
    })
   }
  })
 },
 //验证登录是否过期
 checksession:function(){
  wx.checkSession({
   success:function(res){
    console.log(res,'登录未过期')
    wx.showToast({
     title: '登录未过期啊',
    })
   },
   fail:function(res){
    console.log(res,'登录过期了')
    wx.showModal({
     title: '提示',
     content: '你的登录信息过期了,请重新登录',
    })
    //再次调用wx.login()
    wx.login({
     success: function (res) {
      console.log(res.code)
      //发送请求
      wx.request({
       url: '自己的域名', //仅为示例,并非真实的接口地址
       data: {
        code: res.code
       },
       header: {
        'content-type': 'application/json' // 默认值
       },
       success(res) {
        console.log(res)
       }
      })
     }
    })
   }
  })
 },
 //获取用户的信息
 info:function(){
  var that=this
  wx.getUserInfo({
   success:function(res){
    console.log(res.userInfo)
    var city = res.userInfo.city
    var country = res.userInfo.country
    var nickName = res.userInfo.nickName
    var province = res.userInfo.province
    that.setData({
     city:city,
     country:country,
     nickName:nickName,
     province:province
    })
   }
  })
 }
})

index.php

<?php
//声明code,用来接收前台传过来的code
$code=$_GET['code'];
 
//获取到appid
$appid="xxxxxxxxxxx"; //自己的appid
$secret="xxxxxxxxxxxx";  //自己的secret
$api="https://api.weixin.qq.com/sns/jscode2session?appid={$appid}&secret={$secret}&js_code={$code}&grant_type=authorization_code";  //可去小程序开发文档中查看这个链接
 
//发送的代码
function httpGet($url){
	$curl=curl_init();
	curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
	curl_setopt($curl, CURLOPT_TIMEOUT, 500);
	curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
	curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, true);
	curl_setopt($curl, CURLOPT_URL, $url);
	$res= curl_exec($curl);
	curl_close($curl);
	return $res;
}
 
$str=httpGet($api);
 
echo $str;
?>

关于这个php文件的说明:

①获取appid和secret:

微信小程序用户授权,以及判断登录是否过期的方法

②当你点击登录的时候,出现这些东西就说明php文件调用成功

微信小程序用户授权,以及判断登录是否过期的方法

③登录凭证校检地址(该里面的参数即可):

微信小程序用户授权,以及判断登录是否过期的方法

④域名要合法

在小程序平台上:

微信小程序用户授权,以及判断登录是否过期的方法

在web开发者工具里:

微信小程序用户授权,以及判断登录是否过期的方法

以上所述是小编给大家介绍的微信小程序用户授权及判断登录是否过期详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
html数组字符串拼接的最快方法
Sep 16 Javascript
跨浏览器开发经验总结(四) 怎么写入剪贴板
May 13 Javascript
javascript管中窥豹 形参与实参浅析
Dec 17 Javascript
EditPlus注册码生成器(js代码实现)
Mar 25 Javascript
JavaScript中的console.trace()函数介绍
Dec 29 Javascript
jQuery实现向下滑出的平滑下拉菜单效果
Aug 21 Javascript
Javascript基础知识盲点总结之函数
May 15 Javascript
微信小程序获取手机系统信息的方法【附源码下载】
Dec 07 Javascript
微信小程序自定义多选事件的实现代码
May 17 Javascript
iview tabs 顶部导航栏和模块切换栏的示例代码
Mar 04 Javascript
微信小程序登录数据解密及状态维持实例详解
May 06 Javascript
Jquery滑动门/tab切换实现方法完整示例
Jun 05 jQuery
利用es6 new.target来对模拟抽象类的方法
May 10 #Javascript
Angular4.0动画操作实例详解
May 10 #Javascript
Angular 2使用路由自定义弹出组件toast操作示例
May 10 #Javascript
Angular2使用SVG自定义图表(条形图、折线图)组件示例
May 10 #Javascript
vue 实现搜索的结果页面支持全选与取消全选功能
May 10 #Javascript
Vue项目中配置pug解析支持
May 10 #Javascript
Angular2实现的秒表及改良版示例
May 10 #Javascript
You might like
php生成缩略图的类代码
2008/10/02 PHP
解析Linux下Varnish缓存的配置优化
2013/06/20 PHP
抛弃 PHP 代价太高
2016/04/26 PHP
php使用ffmpeg向视频中添加文字字幕的实现方法
2016/05/23 PHP
jQuery 动画基础教程
2008/12/25 Javascript
jQuery 使用手册(三)
2009/09/23 Javascript
jQuery Dialog 弹出层对话框插件
2010/08/09 Javascript
使用jquery实现简单的ajax
2013/07/08 Javascript
JavaScript的strict模式与with关键字介绍
2014/02/08 Javascript
js写的方法实现上传图片之后查看大图
2014/03/05 Javascript
javascript获取系统当前时间的方法
2015/11/19 Javascript
浅析jQuery事件之on()方法绑定多个选择器,多个事件
2016/04/27 Javascript
Bootstrap媒体对象的实现
2016/05/01 Javascript
jQuery EasyUI 为Combo,Combobox添加清除值功能的实例
2017/04/13 jQuery
Bootstrap下拉菜单更改为悬停(hover)触发的方法
2017/05/24 Javascript
js+html获取系统当前时间
2017/11/10 Javascript
Vue中如何实现proxy代理
2018/04/20 Javascript
vue中vee validate表单校验的几种基本使用
2018/06/25 Javascript
vue 进阶之实现父子组件间的传值
2019/04/26 Javascript
实现一个 Vue 吸顶锚点组件方法
2019/07/10 Javascript
微信小程序在text文本实现多种字体样式
2019/11/08 Javascript
js验证账户名是否重复
2020/05/26 Javascript
[25:59]Newbee vs TNC 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python中的格式化输出用法总结
2016/07/28 Python
解决Ubuntu pip 安装 mysql-python包出错的问题
2018/06/11 Python
详解python3类型注释annotations实用案例
2021/01/20 Python
CSS3动画效果回调处理详解
2014/12/10 HTML / CSS
HTML5之语义标签介绍
2016/07/07 HTML / CSS
百丽国际旗下购物网站:优购
2017/02/28 全球购物
自荐信结尾
2013/10/27 职场文书
会议活动邀请函
2014/01/27 职场文书
测试工程师职业规划书
2014/02/06 职场文书
标准化管理实施方案
2014/02/25 职场文书
公司优秀员工推荐信
2015/03/24 职场文书
长辈生日祝福语大全(72句)
2019/08/09 职场文书
成本低的5个创业项目:投资小、赚钱快
2019/08/20 职场文书