日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

vue+springboot實現登錄功能

瀏覽:127日期:2023-12-01 08:43:25

本文實例為大家分享了vue+springboot實現登錄功能的具體代碼,供大家參考,具體內容如下

1. 登錄功能的實現

實現提交表單的代碼如下:

async submitForm(user) {this.$refs[user].validate((valid) => { if(valid){alert('user');this.$axios.post('http:localhost:8087/user/login?code='+this.code,user).then(res => { alert('success') if(res.data.state){ alert(res.data.msg+'登錄成功,即將跳轉到主頁......'); } else{ alert(res.data.msg); }}); } else{return false; } });},

當頭一棒,腦瓜嗡嗡的。

vue+springboot實現登錄功能

這東西嗡嗡了好幾天最終被我用比較愚蠢的代碼實現了,具體思路如下:

首先我現在后臺獲取到當前生成驗證碼圖片的真正驗證碼,傳遞到前端:

if (valid) {console.log(this.user); this.$axios.get('http://localhost:8087/user/getCode').then(res => { let tcode = res.data.toLowerCase(); if (tcode == this.code) {verify(this.user); } else {alert(’驗證碼錯誤!’); }}); }

中間的verify就是我驗證用戶登錄的用戶名和密碼的地方,驗證碼首先生成四位驗證碼然后轉化為base64格式的字符串,最后傳遞到前端,后端返回字符串的代碼。

@GetMapping('/getCode') @ApiOperation(value='獲取驗證碼',notes='從后端獲取驗證碼發送到前端') public String getCode(HttpServletRequest request){String key = (String)request.getServletContext().getAttribute('code');log.info('key:[{}]',key);return key; }

我分析登錄模塊前端給后端傳值不成功的原因是因為前端只有用戶名和密碼,然后我錯認為只有用戶名和密碼的表單可以組成一個對象導致一直將表單強制轉化為對象去傳遞給后端,這樣就一直造成了死循環,在這個問題卡了好久好久。之前也是將用戶名密碼和驗證碼傳遞給后端一直卡在那里。我先從后端獲取驗證碼在前端比較正確與否,然后將用戶輸入的用戶名和密碼傳遞給后端在數據庫中查找對應用戶名的用戶,若可以查找得到則說明此用戶存在,否則用戶存在。接下來比較用戶輸入的密碼是否和數據庫存入的密碼一致,如果一致則返回真,登錄成功,其他情況都不成功。具體的實現代碼如下:

//UserController @PostMapping('/login') @ApiOperation(value = '登錄系統', notes = '登錄員工管理系統') public Map<String,Object> login(@RequestParam String Name,@RequestParam String Pwd){System.out.println(Name+' '+Pwd);Map<String,Object> map = new HashMap<>();try{ User userdb = userService.login(Name,Pwd); map.put('state',true); map.put('msg','登錄成功'); map.put('user',userdb);}catch(Exception e){ e.printStackTrace(); map.put('state',false); map.put('msg',e.getMessage());}log.info('[{}]',map.toString());return map; }

//UserServiceImpl @Override public User login(String Name,String Pwd) {User userDB = userMapper.selectByName(Name);if(!ObjectUtils.isEmpty(userDB)){ if(userDB.getPwd().equals(Pwd)){return userDB; } else{throw new RuntimeException('密碼輸入不正確'); }}else{ throw new RuntimeException('用戶不存在');} }

//UserMapper.javaUser selectByName(String name);

<!--UserMapper.xml--> <select parameterType='String' resultType='com.sunset.system.entity.User'>select Id,Name,Age,Sex,Pwd,Dept,Salaryfrom user where Name = #{name}</select>

在編碼過程中,還遇到一個小插曲 就是 where Name = “#{name}” 導致在數據庫查找中出錯,希望看此文章的人能避開這個坑。這樣后端的邏輯就實現完成,下來是前端邏輯:

async function verify(userinfo) { const {data: res} = await verifyUser(userinfo); console.log(res); if (res.state == true) { _this.$message({ title: '驗證成功', message: '歡迎進入員工管理系統', type: 'success' }); window.location.; //await _this.$router.push('http://www.baidu.com'); } else { _this.$message({ title: '驗證失敗', message: res.msg, type: 'error' }) return false; }}

這里使用axios的post請求,具體的路徑在projectName.src.api 新建一個user.js的文件

export const verifyUser = (user) =>{ return request({url: '/user/login',method: ’post’,params: { Name: user.Name, Pwd: user.Pwd} })}

此外還需要配置request.js,文件路徑 projectName.src.utils

import axios from ’axios’const instance = axios.create({ baseURL: ’http://localhost:8080’, //后端項目的端口 timeout: 10000, headers: {’X-Custom-Header’: ’foobar’}});export default instance;

要是有其他邏輯問題,歡迎討論交流。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩精品一卡| 日韩在线短视频| 樱桃成人精品视频在线播放| 福利在线免费视频| 亚洲精品在线影院| 国产精品综合| 亚洲成a人片| 美女毛片一区二区三区四区 | 国产精品嫩模av在线| 国产伦理一区| 欧洲在线一区| 亚洲一二av| 久久精品国产999大香线蕉| а√天堂中文在线资源8| 国产一区亚洲| 国产免费av国片精品草莓男男| 日韩av有码| 国产模特精品视频久久久久| 天堂av在线一区| 麻豆精品新av中文字幕| 久久久五月天| 国产精品一在线观看| 久久男人天堂| 国产亚洲毛片| 老牛国内精品亚洲成av人片| 欧美不卡在线| 免费在线观看一区| 五月天激情综合网| 精品视频久久| 日韩一区二区三免费高清在线观看 | 麻豆久久久久久| 亚洲免费影院| 亚洲国产欧美日本视频| 久久最新视频| 91亚洲一区| 国产亚洲高清一区| 亚洲一级淫片| 久久不射网站| 久久精品一区二区不卡| 国产精品久一| 日韩精品欧美成人高清一区二区| 日韩国产一区| 久久av免费看| 久久激情五月婷婷| 免费日韩精品中文字幕视频在线| 一本大道色婷婷在线| 久久的色偷偷| 日韩动漫一区| 色狠狠一区二区三区| 99久久九九| 日韩欧美网址| 精品国产精品国产偷麻豆| 日韩精品久久理论片| 在线亚洲精品| 日韩精品一级中文字幕精品视频免费观看 | 国产亚洲一区在线| 欧美 日韩 国产精品免费观看| 免费观看久久av| 91免费精品| 国产精品久久久久蜜臀| 在线看片福利| 日韩成人亚洲| 国产亚洲一区在线| 亚洲精品极品| 欧美三级第一页| 国产精品一区毛片| 国产麻豆一区二区三区精品视频| 国产精品啊v在线| 亚洲天堂av影院| 欧美午夜不卡| 日韩av在线免费观看不卡| 国产日韩在线观看视频| 精品视频网站| 欧美日韩国产传媒| 亚洲精品一级| 精品国产精品国产偷麻豆 | 亚洲精品电影| 日韩不卡免费视频| 麻豆视频一区二区| 日韩国产一区| 亚洲v在线看| 欧洲在线一区| 亚洲三区欧美一区国产二区| 国产精品一区二区三区av麻 | 欧美日韩国产精品一区二区亚洲| 综合欧美精品| 国产剧情在线观看一区| 成人看片网站| 日本aⅴ精品一区二区三区| 国产一区二区三区视频在线| 亚洲欧美日韩国产综合精品二区| 国产精品嫩模av在线| 国产精品人人爽人人做我的可爱| 久久国产福利| 福利精品一区| 91精品丝袜国产高跟在线| 久久国产日本精品| 国产欧美日韩免费观看| 日韩午夜高潮| 在线观看精品| 日韩一区二区三区高清在线观看| 群体交乱之放荡娇妻一区二区| 日韩激情视频网站| 欧美99久久| 国产在线观看91一区二区三区| 国产视频网站一区二区三区| 日韩午夜av在线| 麻豆视频在线观看免费网站黄| 美女精品一区| 久久久久蜜桃| 国产精品99一区二区三区| 青青青国产精品| 蜜臀精品一区二区三区在线观看 | 国产h片在线观看| 日韩高清一区| 视频一区视频二区在线观看| 欧美~级网站不卡| 99久久激情| 日韩在线观看| 国产+成+人+亚洲欧洲在线| 国产日韩中文在线中文字幕| 一区二区国产在线| 久久成人精品| 亚洲色图综合| 深夜福利一区| 亚洲精品伊人| 日韩三级精品| 国产区精品区| 国产精品一在线观看| 鲁大师精品99久久久| 欧美激情久久久久久久久久久| 国产日产一区| 鲁大师精品99久久久| 国产精品mv在线观看| 国产精品密蕾丝视频下载| 欧美日韩午夜| а√天堂8资源中文在线| 久久美女精品| 一区二区三区四区精品视频| 国产亚洲一区二区三区啪| 久久午夜影院| 精品欧美激情在线观看| 国产农村妇女精品一区二区| 亚洲精品四区| 久久亚洲黄色| 影音先锋久久| 久久精品国产网站| 亚洲精品国产偷自在线观看| 视频在线观看一区| 国产精品色婷婷在线观看| 99re国产精品| 国产精品黄色片| 亚洲精品中文字幕乱码| 欧美视频精品全部免费观看| 美女一区网站| 亚洲毛片一区| 激情久久中文字幕| 国产精品18| 亚洲视频电影在线| 99精品在线观看| 久久亚洲道色| 欧美一级二级视频| 91精品在线观看国产| 亚洲日韩视频| 欧洲亚洲一区二区三区| 国产精品一区二区三区四区在线观看 | 日韩中文欧美| 欧美亚洲二区| 亚洲一区有码| 欧美午夜精品一区二区三区电影| 日韩国产91| 91久久久精品国产| 麻豆久久一区二区| 91成人在线网站| 狠狠久久伊人| 国产亚洲精aa在线看 | 亚洲午夜久久久久久尤物| 美女视频网站久久| 亚洲97av| 六月丁香综合| 亚洲美洲欧洲综合国产一区| 青青久久av| 日韩一区二区中文| 成人在线视频区| 欧美综合精品| 久久亚洲色图| 首页亚洲欧美制服丝腿| 午夜欧美精品久久久久久久| 日韩综合精品| 亚洲va在线| 欧美亚洲国产一区| 欧美a级片一区| 最新国产拍偷乱拍精品| 在线亚洲自拍| 亚洲精品影视| 国产欧美一区二区色老头| 免费一级欧美在线观看视频| 精品一区二区三区亚洲| 国际精品欧美精品| 91av亚洲|