当前位置: 首页 > news >正文

服务平台型网站类似抖音网站开发费用

服务平台型网站,类似抖音网站开发费用,好的网站设计培训机构,个人网站备案容易吗Vue 用户登录的基本流程包括以下6个步骤&#xff1a; 步骤&#xff1a; 1. 创建登录表单 在前端&#xff0c;首先要创建一个登录表单&#xff0c;用户输入账号&#xff08;用户名、邮箱、手机号等&#xff09;和密码。 示例&#xff1a;Login.vue <template><div…

Vue 用户登录的基本流程包括以下6个步骤:

步骤:

1. 创建登录表单

在前端,首先要创建一个登录表单,用户输入账号(用户名、邮箱、手机号等)和密码。

示例:Login.vue

<template><div><form @submit.prevent="handleLogin"><div><label for="username">用户名</label><input type="text" id="username" v-model="username" placeholder="请输入用户名" /></div><div><label for="password">密码</label><input type="password" id="password" v-model="password" placeholder="请输入密码" /></div><button type="submit">登录</button></form></div>
</template><script>
export default {data() {return {username: '',password: ''};},methods: {handleLogin() {const userData = {username: this.username,password: this.password};this.$axios.post('/api/user/login', userData).then(response => {if (response.data.status === 'success') {// 登录成功,保存 token 到 localStorage 或 sessionStoragelocalStorage.setItem('authToken', response.data.token);this.$router.push('/admin');  // 跳转到管理页面} else {this.$message.error(response.data.message);  // 显示错误信息}}).catch(error => {this.$message.error('登录失败,请重试');});}}
};
</script>

2. 发送登录请求到后端

handleLogin 方法中,使用 axios 发送 POST 请求到后端 API /api/user/login,并携带用户输入的用户名和密码。

示例:后端登录接口(Node.js + Express)

app.post('/api/user/login', (req, res) => {const { username, password } = req.body;// 查找用户let query = '';let params = [];// 判断用户名是邮箱、电话还是普通用户名if (emailRegex.test(username)) {query = 'SELECT * FROM users WHERE email = ?';params = [username];} else if (phoneRegex.test(username)) {query = 'SELECT * FROM users WHERE phone = ?';params = [username];} else {query = 'SELECT * FROM users WHERE username = ?';params = [username];}db.query(query, params, (err, results) => {if (err) {return res.status(500).json({ message: '数据库错误' });}if (results.length === 0) {return res.status(404).json({ message: '用户不存在' });}const user = results[0];// 验证密码bcrypt.compare(password, user.password, (err, isMatch) => {if (err || !isMatch) {return res.status(401).json({ message: '密码错误' });}// 创建 JWT tokenconst token = jwt.sign({ id: user.id, username: user.username }, secretKey, { expiresIn: '1h' });res.status(200).json({status: 'success',message: '登录成功',token: token  // 将 token 返回给前端});});});
});

3. 保存 Token

在用户登录成功后,后端会返回一个 JWT(JSON Web Token)。前端接收到这个 token 后,需要将它存储到浏览器的 localStoragesessionStorage 中,以便后续的请求使用。

localStorage.setItem('authToken', response.data.token);

4. 进行路由保护

登录后,前端应该根据 token 来判断用户是否已认证。在每个需要认证的路由(例如管理页面)中,使用路由守卫进行验证。

示例:路由守卫

const router = new VueRouter({routes: [{path: '/admin',component: AdminPage,beforeEnter: (to, from, next) => {const token = localStorage.getItem('authToken');if (token) {next();  // 已登录,继续访问} else {next('/login');  // 未登录,重定向到登录页}}},{path: '/login',component: LoginPage}]
});

5. 发起受保护请求

在后续的 API 请求中,前端会把保存的 token 附加到请求头部,发送给后端验证。

示例:发起受保护的 API 请求

this.$axios.get('/api/protected/resource', {headers: {Authorization: `Bearer ${localStorage.getItem('authToken')}`}
}).then(response => {console.log('Protected data:', response.data);}).catch(error => {console.error('Error:', error.response);});

6. 登出功能

用户登出时,前端需要删除存储的 token,并跳转到登录页面。

示例:登出功能

logout() {localStorage.removeItem('authToken');  // 删除 tokenthis.$router.push('/login');  // 跳转到登录页面
}

总结流程:

  1. 用户在登录页输入用户名和密码。
  2. 前端发送 POST 请求到后端,携带用户名和密码。
  3. 后端验证用户信息,生成并返回 JWT Token。
  4. 前端保存 token,并跳转到受保护页面。
  5. 在后续的 API 请求中,前端将 token 附加在请求头部。
  6. 用户登出时,删除 token 并跳转到登录页面。
http://www.yayakq.cn/news/177020/

相关文章:

  • 网站建设销售实训报告企业内部网页设计
  • 做推广哪个平台网站好台州网站设计
  • 网站设为首页代码网站响应式布局
  • 建设网站用什么app江苏个人网站备案
  • seo网站排名优化培训教程顺德企业手机网站建设
  • 有什么做节能报告的网站济南网站自然优化
  • 网上商城网站怎么做谷歌代运营
  • 免费推广网站有哪些平台wordpress 安装要求
  • 网站管理怎么做深圳网站建设官网
  • 网站背景怎么弄自建房外观设计网站推荐
  • 中石油工程建设公司网站儿童摄影网站源码
  • 高端网站建设公司零零WordPress反爬虫教程
  • 万润 营销型网站建设家在深圳龙岗
  • 网站设计开发工程师做百度网站费用多少合适
  • 济南网站app开发互联网医院
  • 做旅游网站平台ppt网站的系统建设方式
  • 河北固安县网站建设wordpress定制后台图片上传功能
  • 巩义网站建设报价58同城企业网站怎么做的
  • 医院信息化建设会议安排网站医院网站建设的资料
  • 联享品牌网站建设公司免费网站域名使用
  • 如何增加网站关键词app大全软件网站免费下载
  • 合肥网站优化中国建设银行贵州分行网站
  • 电子商务网站建设交印花税吗公众号开发教程零基础
  • 网站系统开发流程济南手机网站开发公司
  • 校园网站建设的意见与建议洋县建设银行网站
  • word模板免费网站crm管理系统图片
  • 网站开发项目计划书ppt静态网站建设流程怎么写
  • 免费淘宝网站建设深圳深圳网站制作
  • 怎么建设自己网站(儿童)步骤绍兴专业做网站
  • 办公家具网站建设费用长沙广告公司排名