Abp VNext默认没公开访问Token的Api,但有个问题Cookie方式如果是手机或桌面程序不如Token方便

Axios默认是Json方式提交,abp登录需要使用application/x-www-form-urlencoded方式提交

首先引入Axios

import Axios from "axios"
Vue.prototype.$axios = Axios
//api访问基址
Axios.defaults.baseURL = 'https://localhost:44364'

Vue的Data数据

        data() {
return {
form: {
grant_type: 'password',
scope: 'Mall',
username: 'admin',
password: '1q2w3E*',
client_id: 'Mall_App',
client_secret: '1q2w3e*'
},
rememberMe: false
}
}

显示布局

        <el-form ref="form" label-width="80px">
<el-form-item label="用户名:">
<el-input v-model="form.username"></el-input>
</el-form-item>
<el-form-item label="密码:">
<el-input type="password" v-model="form.password"></el-input>
</el-form-item>
<el-form-item>
<el-checkbox v-model="rememberMe">记住我</el-checkbox>
</el-form-item>
<el-button type="primary" @click="btnLogin">Login</el-button>
</el-form>

按钮登录事件

            btnLogin() {
//QS使用的目的
//正常用Json方式提交
//将对象序列化A=1&b=2&c=3这种方式提交
var qs = require('qs');
this.$axios.post('/connect/token', qs.stringify(this.form), {
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
}).then(response => {
console.log(response)
// this.$router.push('/') 跳转
if (this.rememberMe == true) {
//如果记住我打钩将token保存在本地
// sessionStorage.setItem('access_token', response.data.access_token)//保存为本次会话
// localStorage.setItem('access_token', response.data.access_token);//永久保存,直到浏览器清除缓存
// 想用cookie保存需要引入vue-cookies
// import Vue from 'vue'
// import VueCookies from 'vue-cookies'
// Vue.use(VueCookies)
// 设置一个cookie
// this.$cookies.set(keyName, value[, expireTimes[, path[, domain[, secure]]]])
}
}).catch(error => {
console.log(error.response);
});
}

效果展示

最新文章

  1. fastclick 源码注解及一些基础知识点
  2. CSS3知识点整理&amp;&amp;一些demo
  3. python第二天基础1-1
  4. 《C#本质论》读书笔记(14)支持标准查询操作符的集合接口
  5. linux安装svn服务端不使用apache
  6. 实现Java JTable的应用案例
  7. luoguP2266 爱的距离
  8. 利用Unicorn和Idaemu辅助解决Geekpwn SecretCode
  9. Mybaits入门之起航
  10. 【转载】openCV轮廓操作
  11. [转]How To Use CSS3 Media Queries To Create a Mobile Version of Your Website
  12. 基于Vue的页面切换左右滑动效果
  13. 心得体会,搞清楚你为什么学习C++?
  14. python基础知识点(unittest)
  15. git 入门教程之忽略文件
  16. caffe项目工程化封装FRCNN
  17. mysql,Jdbc工具类,只需一条sql实现简单查询
  18. man iptables 8
  19. VS2010工程结构及其瘦身策略
  20. 英特尔和 Valve* 将英特尔&#174; Embree 光线追踪技术添加至全新 Steam* Audio 插件

热门文章

  1. 自学linux——15.云主机的购买流程及域名的购买备案解析
  2. SQL语句(一)基础查询与过滤数据
  3. 获取浏览器中url的参数
  4. JavaScript学习03(函数)
  5. springboot打包问题
  6. sqlplus登录用户被锁问题
  7. netty系列之:内置的Frame detection
  8. python3.9 manage.py runserver 报错问题解决
  9. NOIP 模拟 $24\; \rm matrix$
  10. 【AI】Pytorch_预训练模型