uniapp 获取token登录代码
时间: 2023-02-21 16:09:33 浏览: 89
下面是一个使用 uniapp 获取 token 登录的简单代码示例:
```
// 发送登录请求
uni.request({
url: 'https://api.yourdomain.com/login',
method: 'POST',
data: {
username: 'yourusername',
password: 'yourpassword'
},
success: (res) => {
// 获取 token
const token = res.data.token
// 保存 token 到本地存储
uni.setStorage({
key: 'token',
data: token
})
}
})
```
在上面的代码中,我们通过 uni.request 向服务器发送了登录请求,如果请求成功,将会得到一个 token。我们将这个 token 保存到了本地存储中,以便在后面的请求中使用。
请注意,这只是一个简单的示例,你需要根据你的需求和服务器端的实现来调整代码。
相关问题
uniapp登录调用接口获取token
首先,你需要在服务端编写一个登录接口,用于验证用户的账号密码是否正确,并返回一个 token。接口的实现方式可以使用任何一种后端语言实现,比如 PHP、Java、Python 等。
下面以 PHP 为例,展示一个简单的登录接口示例:
```php
<?php
// 获取 POST 请求中的账号和密码
$username = $_POST['username'];
$password = $_POST['password'];
// 进行登录验证,这里假设账号密码都是 admin
if ($username === 'admin' && $password === '123456') {
// 登录成功,生成 token
$token = md5($username . $password . time());
$result = array('code' => 0, 'msg' => '登录成功', 'data' => array('token' => $token));
} else {
// 登录失败
$result = array('code' => -1, 'msg' => '账号或密码错误', 'data' => array());
}
// 返回 JSON 格式的结果
echo json_encode($result);
```
在客户端中,你可以使用 uni.request 方法发送登录请求,示例代码如下:
```javascript
uni.request({
url: 'http://example.com/login.php',
method: 'POST',
data: {
username: 'admin',
password: '123456'
},
success: function(res) {
if (res.data.code === 0) {
// 登录成功,保存 token 到本地存储中
uni.setStorageSync('token', res.data.data.token);
} else {
// 登录失败,弹出错误提示框
uni.showToast({
title: res.data.msg,
icon: 'none'
});
}
},
fail: function(err) {
// 网络请求失败,弹出错误提示框
uni.showToast({
title: err.errMsg,
icon: 'none'
});
}
});
```
在登录成功后,将服务器返回的 token 保存到本地存储中,以备后续请求接口时使用。注意,这里只是一个简单示例,实际应用中需要对用户的账号密码进行更加严格的验证,并采取一定的安全措施,以防止被攻击。
uniapp存储token的方法
在Uniapp中,存储Token可以使用多种方式,下面介绍两种常用的方法:
1. 使用本地存储
可以使用localStorage或sessionStorage把Token存储在本地,示例代码如下:
```javascript
// 保存Token
localStorage.setItem('token', 'your_token_here')
// 获取Token
var token = localStorage.getItem('token')
// 删除Token
localStorage.removeItem('token')
```
在上面的代码中,`localStorage.setItem()`用于保存Token,`localStorage.getItem()`用于获取Token,`localStorage.removeItem()`用于删除Token。使用localStorage存储Token的好处是可以在应用程序关闭后仍然保持登录状态,但是需要注意,不要在localStorage中存储敏感信息,因为localStorage可以被其他脚本访问。
2. 使用Vuex
在Uniapp中,可以使用Vuex来管理应用程序的状态,例如存储Token。示例代码如下:
```javascript
// 定义Vuex store
const store = new Vuex.Store({
state: {
token: null
},
mutations: {
setToken(state, token) {
state.token = token
}
},
actions: {
saveToken({ commit }, token) {
commit('setToken', token)
}
}
})
// 保存Token
store.dispatch('saveToken', 'your_token_here')
// 获取Token
var token = store.state.token
// 删除Token
store.dispatch('saveToken', null)
```
在上面的代码中,定义了一个名为`token`的状态,使用`mutations`来更新状态,使用`actions`来调用`mutations`。在保存Token时,可以使用`store.dispatch()`方法调用`saveToken` action,该方法将Token保存到Vuex store中。在获取Token时,可以使用`store.state.token`获取Token。在删除Token时,可以将Token设置为null,然后通过`store.dispatch()`方法调用`saveToken` action来更新Vuex store中的状态。
以上是两种常用的存储Token的方法,你可以根据自己的需求进行选择。