这个东西其实很简单,但是我搜了好多文章,搞了一整天,然后在最后突然开窍,五分钟就改好了,辛苦了我这一天的时间啊,全都用来干这个事情了,但是,我这个是实验版,并不是那么符合你们想要的结果,但是思路已经给你们了,只要把数据变成数据库取出的就行了。
首先,我们先找到登录界面
下面这个是点击登录按钮的时候,进行的发送请求的操作,但是具体操作没有写在这个里面,而是写在了vuex里面,通过dispath可以看出来它用的是modules里面的user中的login部分
这个是从登录界面dispath过来发送请求的地方,它返回了一个promise,里面的login是从api里面引入的,作用就是发送请求,然后进行请求拦截和相应拦截。
这个就是api里面的内容了,这两个都会用到的,第一个是进行登录请求,把登录的账号传到后台,然后后台返回数据,这个是我自己用node定义的接口,等会在下面会拿出来,这个地方的request就是定义axios的地方
这个是reuqest里面,我把baseURL直接设置了我node服务器的地址,因为我是测试,所以就没有考虑那么多,所以伙伴们想改的要自己改了。
接下来就是后端node的代码了,我不用java的原因是,我真的不会用java写接口返回数据,我是学前端的,感觉用node弄个服务器,然后做一个基本操作可以让我动态渲染数据就行,数据库用的mongodb,这个数据库的好处就是他可以随意定义,没有那么多规矩,感觉比较灵活,但是这个语法我会的少。
router.post('/',async(req,res)=>{
let {username,password} =req.body;
console.log(req.body)
let models=await req.Model.find({username:username})
var jwt = require('jsonwebtoken');
const token = jwt.sign({ id: models._id }, app.get('secret'))
//res.send({token})
res.send({"code":20000,"data":{"token":"admin-token"}})
// res.send({
})
上面的代码其实就是我这个login发送请求然后res返回了数据,是我写好的数据,其实只用了res返回数据这一句话,后续你们可以把返回的数据写成你们从数据库获取的,我这个就是用来测试的,这个code=20000是因为request里面对响应的写的是20000,所以就没有动。
然后就会调用getInfo这个请求,我也忘了这个请求在哪里发送的,所以直接上代码,这个代码返回的数据也是固定写好的,因为我不知道这个数据怎么改,就暂时没有动
这个地方写完之后,就可以自己设置信息登录了。这个根据自己的需要近一步的优化,只需要多加几个判断就行了。