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

网站空间 上传程序专业室内设计 官网

网站空间 上传程序,专业室内设计 官网,济南网站排名推广,自主研发app大概要多少钱Vue 用户登录的基本流程包括以下6个步骤#xff1a; 步骤#xff1a; 1. 创建登录表单 在前端#xff0c;首先要创建一个登录表单#xff0c;用户输入账号#xff08;用户名、邮箱、手机号等#xff09;和密码。 示例#xff1a;Login.vue templatediv…Vue 用户登录的基本流程包括以下6个步骤 步骤 1. 创建登录表单 在前端首先要创建一个登录表单用户输入账号用户名、邮箱、手机号等和密码。 示例Login.vue templatedivform submit.preventhandleLogindivlabel forusername用户名/labelinput typetext idusername v-modelusername placeholder请输入用户名 //divdivlabel forpassword密码/labelinput typepassword idpassword v-modelpassword placeholder请输入密码 //divbutton typesubmit登录/button/form/div /templatescript 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(登录失败请重试);});}} }; /script2. 发送登录请求到后端 在 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 在用户登录成功后后端会返回一个 JWTJSON Web Token。前端接收到这个 token 后需要将它存储到浏览器的 localStorage 或 sessionStorage 中以便后续的请求使用。 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); // 跳转到登录页面 }总结流程 用户在登录页输入用户名和密码。前端发送 POST 请求到后端携带用户名和密码。后端验证用户信息生成并返回 JWT Token。前端保存 token并跳转到受保护页面。在后续的 API 请求中前端将 token 附加在请求头部。用户登出时删除 token 并跳转到登录页面。
http://www.dnsts.com.cn/news/227955.html

相关文章:

  • html5 手机网站 模版seo排名影响因素主要有
  • 国内设计网站公司网站网站设计和备案
  • vue企业门户网站模板动画视频制作软件
  • 大型网站运维公司WordPress插件Discuz
  • 面包店网站建设规划书网站备案中的网站名称
  • 如何做网站经营性备案网站开发工具
  • 企业移动网站建设商深圳信息网
  • 网站制作多少钱资讯东莞市住建局网
  • 绵阳市建设网招标公告秦皇岛做网站优化
  • google如何提交网站网络营销做得好的品牌
  • 厦门城乡住房建设厅网站首页在线设计公司logo图标
  • 请问哪里可以做网站wordpress建英文网站
  • 邵阳市住房和城乡建设局网站全网营销网站怎么做
  • 莱阳 网站建设网站双语版的怎么制作
  • 网站建设报告实训步骤asp网站用什么软件
  • 银川建立网站国内优秀网站设计欣赏
  • 重庆涪陵网站设计公司哪家专业华东建设发展设计有限公司网站
  • 网站建设论文要求郏县网站制作哪家公司好
  • dz网站开发重庆网站仿站
  • 如何创建自己公司网站公司网页宣传
  • 网站怎么做h5支付宝支付电子商务网页制作素材
  • 网站教育机构排行前十名互联网营销网站建设
  • 做网站排名要懂那些青岛高端网站开发公司
  • 网站建设开发方式包括哪些方面腾讯云服务器免费领取试用
  • 大学网站模板html网站建设平台 创新模式
  • 做网站网编程app用什么软件
  • 企业网站产品分类多怎么做seoseo顾问价格
  • 电子商务企业网站策划app手机软件开发公司
  • 合江县住房建设规划局网站高清免费素材网站
  • 没有网站怎么做外贸游戏钓鱼网站开发