精华内容
下载资源
问答
  • uniapp封装token验证

    千次阅读 2020-04-06 11:01:11
    //带Token请求 const httpTokenRequest = (opts, data) => { let token = ""; uni.getStorage({ key: 'token', success: function(ress) { token = ress.data } }); //此token是登录成功后后台返回...
    //带Token请求
    const httpTokenRequest = (opts, data) => {
    	let token = "";
    	uni.getStorage({
    		key: 'token',
    		success: function(ress) {
    			token = ress.data
    		}
    	});
    	//此token是登录成功后后台返回保存在storage中的
    	let httpDefaultOpts = {
    		url: baseUrl + opts.url,
    		data: data,
    		method: opts.method,
    		header: opts.method == 'get' ? {
    			'Token': token,
    			'X-Requested-With': 'XMLHttpRequest',
    			"Accept": "application/json",
    			"Content-Type": "application/json; charset=UTF-8"
    		} : {
    			'Token': token,
    			'X-Requested-With': 'XMLHttpRequest',
    			'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
    		},
    		dataType: 'json',
    	}
    	let promise = new Promise(function(resolve, reject) {
    		uni.request(httpDefaultOpts).then(
    			(res) => {
    				resolve(res[1])
    			}
    		).catch(
    			(response) => {
    				reject(response)
    			}
    		)
    	})
    	return promise
    };

     

    展开全文
  • uniapp检验用户是否登录的方法:首先打开APP代码中的【user.vue】文件;然后利用uni的setstorage API来获取值,如果得到了值就意味着登录了,得不到则跳转不到登录界面。本教程操作环境:windows7系统、uni-app2.5.1...

    uniapp检验用户是否登录的方法:首先打开APP代码中的【user.vue】文件;然后利用uni的setstorage API来获取值,如果得到了值就意味着登录了,得不到则跳转不到登录界面。

    本教程操作环境:windows7系统、uni-app2.5.1版本,该方法适用于所有品牌电脑。

    uniapp检验用户是否登录的方法:

    打开我们APP代码中的user.vue文件:

    实现逻辑

    我们判断用户是否登录的时候我们需要将一个值存入到客户端,如果存在这个值就意味着用户登录了,如果没有则用户需要登录。那么首先我们需要做的逻辑就是:利用uni的 setstorage API来获取值,如果得到了值就意味着登录了,得不到则跳转不到登录界面。

    逻辑编码

    export default {

    data() {

    return {};

    },

    //uni生命周期函数,页面显示就执行,这意味着如果一打开这个页面,如果没登录将永远跳转到登录页面

    onShow() {

    /****************************************************用户是否登录代码开始:https://www.clearnull.com/963.html*****/

    //uni获取本地数据API

    uni.getStorage({

    key: 'token', //数据key值,也就是你存储数据时的名称

    success: function(res) {

    //数据成功获取,用户已登录

    console.log(res.data);

    },

    fail: function(res) {

    //数据未获取成功,用户没有登录,这里我们直接跳转到登录页面

    uni.navigateTo({

    url: '../login/login',

    });

    }

    });

    /*************************************用户是否登录代码结束**********************/

    }

    };

    language-javascript

    保存代码之后在浏览器中运行你会发现只要点击用户界面就会跳转到登录页面,因为这时候是没有值的。相关免费学习推荐:php编程(视频)

    展开全文
  • 1 建立一个文件名为config.... //公共接口请求地址export default baseurl;url2 在登陆接口返回数据的那步,将token存进缓存中debug// 存储tokenuni.setStorage({key: 'token',data: res.data.access_token,success:...

    1 建立一个文件名为config.js缓存

    const baseurl = 'http://xxx:9090/';  //公共接口请求地址

    export default baseurl;url

    2 在登陆接口返回数据的那步,将token存进缓存中debug

    // 存储token

    uni.setStorage({

    key: 'token',

    data: res.data.access_token,

    success: function () {

    uni.getStorage({

    key: 'token',

    success: function (res) {

    console.log(res.data);

    }

    });

    }

    });token

    在uni.getStorage  API中打印,会发现已经能够拿到缓存的token数据了接口

    3 建立一个公共请求文件 requst.jsget

    若是token不存在,就返回到登陆界面。baseurl为公共的接口地址io

    import baseurl from './config.js'

    // 公共的请求

    const request = function(options) {

    options.url = baseurl + options.url;

    try {

    const token = uni.getStorageSync('token');

    const username = uni.getStorageSync('username');

    debugger

    if (token) {

    options.header = {

    'Authorization' : 'Bearer ' + token

    };

    }else{

    uni.navigateTo({

    url: '../../login/login/login'

    });

    return;

    }

    } catch (err) {

    console.log(err)

    }

    return uni.request(options);

    }

    export default request;console

    4 去相应界面使用function

    import request from '../../../request.js'               //引进requst方法import

    onShow:function(){

    request({

    url:"message/messages",

    method:'get',

    success: function (res) {

    console.log(res.data);

    }

    })

    }

    展开全文
  • uniapp开发中,遇到一种情况,就是在某个模块,我需要根据登录的账号判断有没有权限看到该模块。于是,本来我以为这些信息都存在用户登录接口里,后来发现原来都装在token中,也就是说,我这边存储获取到token后...

    在uniapp开发中,遇到一种情况,就是在某个模块,我需要根据登录的账号判断有没有权限看到该模块。本来我以为这些信息都存在用户登录接口里,后来发现原来都装在token中,也就是说,我需要获取到token后需要自己去解析。

    1.下载依赖

    npm install jsrsasign

    2.封装一个公共方法
    import jsrsasign from 'jsrsasign'
    export const decodeToken = (token) => {
      let obj = null
      if (token !== '') {
        const payload = jsrsasign.KJUR.jws.JWS.parse(token)
        if (payload.hasOwnProperty('payloadObj')) {
          obj = payload.payloadObj
        }
      }
      return obj
    }
    
    
    3.导入,使用
    import {decodeToken} from '@/utils/jsrsasign.js'
    onShow() {
    	//token自己存储,我这就不写那个公共方法了
    	localStorage.getItem('token');
    	
    	// 解析token获取当前账号的权限数组
    	//直接使用引入的这个decodeToken方法
    	this.userData = decodeToken(localStorage.getItem('token'))
    	console.log(this.userData,"解析数据")
    },
    
    

    在这里插入图片描述
    这样就可以获取到解析后的数据了,希望对你有帮助。

    展开全文
  • uniapp token登录效验的思路

    千次阅读 2020-04-27 16:59:02
    http请求封装:写一个中间件,每次请求都携带token进行效验,拦截后台返回的相关错误...分别是请求退出,请求token , 请求用户信息 import { httpServer1 } from '../../rpc-service/index.js' const userStore...
  • uniapp + springboot实现token身份认证

    千次阅读 2020-07-02 15:10:52
    app端或者前后端分离的项目,保持用户登录认证最普遍的方法是token认证。 后端一般使用JWT进行token发放和认证,前端登录时拿到token,并在每次请求时都带上token,后端收到请求拿到token就可以认证用户信息和用户...
  • 封装uniapptoken请求和上传图片

    千次阅读 2020-05-13 13:50:43
    token: res.data.msg.token, phone: res.data.msg.user.userTel, userName: res.data.msg.user.userName } uni.setStorage({ key: 'token', dat
  • // token默认过期时间 var expiredTime = +new Date() +1800*1000 // 不需要登录的接口 const noToken = [ '/auth/login' ]; const request = function(options={}) { // 判断是否需要登录 if (!(noToken.i
  • uniapp封装请求,使用的是DCloud插件市场的插件:《干脆清晰的request请求库 支持各种拦截与回调 上传下载》,感谢作者! 我下载的是: 更新日期:2020-06-03 版本:4.1.0 为了实现批量上传图片,我略微改动了下...
  • let baseUrl = "http://xuzeqin666.top/yueche-api/public/index.php/uniapp" let header = 'application/json' return new Promise((resolve, reject) => { uni.showLoading({ title:'加载中', mask
  • 1 创建一个文件名为config.js const baseurl = 'http://xxx:9090/'; //公共接口请求地址 export default baseurl; 2 在登录接口返回数据的那步,将token存进缓存中 // 存储token uni.setStorage({ ...
  • uniapp封装网络请求(post+token)

    千次阅读 2020-08-18 17:58:28
    不需要参数时不传即可 onload(){ let params = { name:'姓名' } GetUserMsg(params).then(res=>{ console.log(res) //然后就可以看见您所需要的数据 }) } 其他有关uniapp的疑问或者此方法不理解的地方您可...
  • 在使用uniapp制作安卓程序时,登陆操作,会使用到再请求头加token,来短短用户信息,但在一部分请求里,也可能用不到。所有首选创建一个名为config的js文件。 const baseurl = '...
  • 1、首先我们在新建好的uniapp项目中新建一个文件夹common,再建一个request.js文件 2. 在request.js放入以下代码 var apiUrl = ''; //放入后台接口的url // #ifdef H5 var baseUrl = ''; if (process.env....

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 136
精华内容 54
关键字:

tokenuniapp