uni.setStorageSync('token', result.data.token); 怎么获取
时间: 2024-09-06 12:04:38 浏览: 56
`uni.setStorageSync('token', result.data.token);` 这行代码是用于在uni-app框架中,将数据同步存储到本地的Storage中。具体来说,它将变量`result.data.token`的值保存到本地存储中,并以`'token'`作为键(key)。这样,即使在应用关闭并重新启动后,这个值依然可以被检索。
要在之后获取这个存储的值,可以使用`uni.getStorageSync('token');`方法。这个方法将会返回以`'token'`为键存入本地的值。如果该键不存在,则返回`undefined`。
以下是使用`uni.getStorageSync('token');`获取存储值的基本步骤:
1. 确保你是在同一个设备上使用同一个uni-app应用来获取存储的值,因为本地存储是与特定应用绑定的。
2. 在需要获取`token`值的代码位置调用`uni.getStorageSync('token');`。
示例代码如下:
```javascript
// 存储token值
uni.setStorageSync('token', result.data.token);
// 在需要获取token值的地方
const storedToken = uni.getStorageSync('token');
console.log(storedToken); // 如果之前成功存储了token,这里会打印出token的值
```
相关问题
用uni.addInterceptor在请求头上添加token
使用uni.addInterceptor在请求头上添加token的代码中,首先定义了一个needLogin数组,用来存放需要验证登录的页面路径。然后通过遍历list数组,分别为uni.navigateTo、uni.redirectTo、uni.reLaunch和uni.switchTab这四个路由方法添加拦截器。在拦截器的invoke方法中,首先获取用户的token,然后获取当前页面的路径去掉参数后的url。接着判断要打开的页面是否在needLogin数组中,同时判断token是否为空。如果需要验证登录且token为空,则会弹出提示信息并跳转到登录页面,否则返回true表示可以继续执行。最后,在fail方法中处理失败的回调。这样通过uni.addInterceptor可以在请求头上添加token进行拦截操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [vue在请求头中添加token信息的image自定义标签](https://download.csdn.net/download/YinJson/88042075)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [uniapp全局拦截之uni.addInterceptor](https://blog.csdn.net/keaicll/article/details/129670953)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
<template> <view> <image :src="mySrc" style="width: 100%;"></image> <view class="show"> <button type="primary" @click="selectimg()">请上传户口本页面</button> </view> <view> <uni-section title="姓名" type="line"> <uni-card :is-shadow="false"> <text class="uni-body">{{personname}}</text> </uni-card> </uni-section> <uni-section title="身份证号" type="line"> <uni-card :is-shadow="false"> <text class="uni-body">6105******</text> </uni-card> </uni-section> <uni-section title="评论区" type="line" padding> <uni-easyinput type="textarea" v-model="value" placeholder="请输入内容"></uni-easyinput> </uni-section> </view> <uni-section title="评论得分" type="line" padding> <uni-rate v-model="rateValue" @change="onChange" /> </uni-section> <view> <button type="primary">确定评论</button> </view> </view> </template> <script> export default { data() { return { mySrc: require("@/static/logo/lo3.png"), personname:"", }; }, methods: { selectimg() { uni.chooseImage({ count: 1, sizeType: ['original', 'compressed'], sourceType: ['album'], success: (res) => { console.log(res.tempFilePaths[0]); this.mySrc = res.tempFilePaths[0]; this.changeImgToBase64(res.tempFilePaths[0]); } }); }, changeImgToBase64(source_img) { uni.getFileSystemManager().readFile({ filePath: source_img, encoding: "base64", success: (res) => { console.log("加密之后的图片格式:" + JSON.stringify(res)); this.makeFinalResult(res.data); }, }); }, async makeFinalResult(base64) { let token = await uni.request({ url: 'https://aip.baidubce.com/oauth/2.0/token', data: { grant_type: 'client_credentials', client_id: '2kKeVk6LvdFX8knIyYUodMDr', client_secret: '9pSXGfzvv7q1Fo76WRkeyXVpZGrj8zxb', }, success: (res) => { console.log("获取token:===>" + res.data.access_token); token = res.data.access_token; }, }); uni.request({ url: 'https://aip.baidubce.com/rest/2.0/ocr/v1/household_register?access_token=' + token, method: 'POST', data: { image: base64, }, header: { "Content-Type": "application/x-www-form-urlencoded", }, success: (res) => { console.log("最终的结果:" + JSON.stringify(res)); //this.personname = res.words_result.Name.words; }, }); }, }, }; </script> <style lang="scss"> .show { display: flex; justify-content: center; height: 100vh; align-items: center; } <style>
这是一个Vue.js组件的代码,用于上传图片并进行文字识别。代码中包含了以下主要部分:
1. 模板部分:使用了Vue.js的模板语法,定义了一个视图,包含一个图片元素、一个显示区域、一些文本和按钮等。
2. 数据部分:通过data()方法定义了组件的数据属性,包括mySrc(图片路径)和personname(姓名)等。
3. 方法部分:定义了selectimg()方法,用于选择图片并显示在页面上;changeImgToBase64()方法,将选择的图片转换为base64格式;makeFinalResult()方法,通过调用百度OCR接口进行图片识别,并将识别结果赋值给personname属性。
4. 样式部分:使用了scss语法定义了一些样式。
需要注意的是,该代码中的请求地址、密钥等可能是测试用的,实际使用时需要替换为真实的接口地址和密钥。
阅读全文