Vue+Flask实现简单的登录验证跳转的示例代码


Posted in Javascript onJanuary 13, 2018

本文介绍了Vue+Flask实现简单的登录验证跳转,分享给大家,具体如下:

文件位置: Vue+Flask实现简单的登录验证跳转的示例代码

login.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Login</title>

  <script type="text/javascript" src="../static/vue.js"></script>
  <script type="text/javascript" src="../static/axios.js"></script>

</head>
<body>

<div id="login">
  <form action="#" novalidate>
    <label for="username">Username</label>
    <input type="text" name="username" id="username" placeholder="Enter your Name" v-model="username"><br>
    <label for="password">Password</label>
    <input type="text" name="password" id="password" placeholder="Enter your Password" v-model="password"><br>
    <br>

    <button type="button" v-on:click="login">Apply</button>
  </form>
</div>


<script type="text/javascript">
  var login = new Vue({
    el: '#login',
    data:{
      username: '',
      password: ''
    },
    methods: {
      login: function () {
        axios.post('http://127.0.0.1:5000/login',{
          username: this.username,
          password: this.password
        }).then(function (response) {
          console.log(response.status)
          // 其实是应该走后台路由
          if(parseInt(response.status) === 200){
            window.location.href = 'index'
          }
        }).catch(function (error) {
          console.log(error.response)
        })

      }
    }
  })
</script>

</body>
</html>

index.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Index</title>
</head>
<body>
  <h1>Hello,This is Index Page!</h1>
</body>
</html>

Login.py

# -*- coding: utf-8 -*-

from flask import Flask, request, session, redirect, url_for, render_template, make_response, jsonify
app = Flask(__name__)


@app.route('/login', methods=('GET', 'POST'))
def login():
  if request.method == 'POST':
    session['username'] = request.json.get('username')
    session['password'] = request.json.get('password')
    # 登录成功,则跳转到index页面
    return jsonify({'code': 200, 'token': "123456"})
  # 登录失败,跳转到当前登录页面
  return render_template('login.html')


@app.route('/index')
def index():
  # 如果用户名和密码都存在,则跳转到index页面,登录成功
  if 'username' in session and 'password' in session:
    return render_template('index.html')
  # 否则,跳转到login页面
  return redirect(url_for('login'))


@app.route('/logout')
def logout():
  session.pop('username', None)
  session.pop('password', None)
  return redirect(url_for('login'))


# set the secret key. keep this really secret:
app.secret_key = 'A0Zr98j/3yX R~XHH!jmN]LWX/,?RT'


if __name__ == '__main__':
  app.run(debug=True)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 清除输入框中的数据
Apr 13 Javascript
js的hasownproperty使用示例
Mar 02 Javascript
javascript实现的元素拖动函数宿主为浏览器
Jul 21 Javascript
javascript中offset、client、scroll的属性总结
Aug 13 Javascript
JavaScript给input的value赋值引发的关于基本类型值和引用类型值问题
Dec 07 Javascript
jquery判断input值不为空的方法
Jun 05 Javascript
引入JavaScript时alert弹出框显示中文乱码问题
Sep 16 Javascript
通过vue-cli3构建一个SSR应用程序的方法
Sep 13 Javascript
vue中如何实现后台管理系统的权限控制的方法步骤
Sep 05 Javascript
element-ui table行点击获取行索引(index)并利用索引更换行顺序
Feb 27 Javascript
Vue Render函数原理及代码实例解析
Jul 30 Javascript
三种方式清除vue路由跳转router-link的历史记录
Apr 10 Vue.js
react-redux中connect的装饰器用法@connect详解
Jan 13 #Javascript
基于vue实现网站前台的权限管理(前后端分离实践)
Jan 13 #Javascript
详解webpack-dev-server使用http-proxy解决跨域问题
Jan 13 #Javascript
vuejs实现递归树型菜单组件
Jan 13 #Javascript
在vue中通过axios异步使用echarts的方法
Jan 13 #Javascript
详解基于vue-cli配置移动端自适应
Jan 13 #Javascript
javascript用rem来做响应式开发
Jan 13 #Javascript
You might like
无线电波是什么?它是怎样传输的?
2021/03/01 无线电
mysql中存储过程、函数的一些问题
2007/02/14 PHP
php中 $$str 中 &quot;$$&quot; 的详解
2015/07/06 PHP
php实现遍历多维数组的方法
2015/11/25 PHP
IOS 开发之NSDictionary转换成JSON字符串
2017/08/14 PHP
PHP5.6读写excel表格文件操作示例
2019/02/26 PHP
laravel Validator ajax返回错误信息的方法
2019/09/29 PHP
通过JAVAScript实现页面自适应
2007/01/19 Javascript
延时重复执行函数 lLoopRun.js
2007/05/08 Javascript
ASP SQL防注入的方法
2008/12/25 Javascript
jquery 注意事项与常用语法小结
2010/06/07 Javascript
JS判断浏览器是否支持某一个CSS3属性的方法
2014/10/17 Javascript
jQuery的bind()方法使用详解
2015/07/15 Javascript
jQuery遍历DOM元素与节点方法详解
2016/04/14 Javascript
AngularJS中如何使用echart插件示例详解
2016/10/26 Javascript
AngularJS前端页面操作之用户修改密码功能示例
2017/03/27 Javascript
jquery append与appendTo方法比较
2017/05/24 jQuery
jQuery实现可兼容IE6的遮罩功能详解
2017/09/19 jQuery
微信小程序地图实现展示线路
2020/07/29 Javascript
Django ORM框架的定时任务如何使用详解
2017/10/19 Python
Python多图片合并PDF的方法
2019/01/03 Python
阿根廷网上配眼镜:SmartBuyGlasses阿根廷
2016/08/19 全球购物
携程英文网站:Trip.com
2017/02/07 全球购物
100%植物性、有机、即食餐:Sakara Life
2018/10/25 全球购物
Volcom英国官方商店:美国殿堂级滑板、冲浪、滑雪服装品牌
2019/03/13 全球购物
文秘档案管理岗位职责
2014/03/06 职场文书
党校培训自我鉴定范文
2014/03/20 职场文书
反邪教警示教育方案
2014/05/13 职场文书
法院反腐倡廉心得体会
2014/09/09 职场文书
擅自离岗检讨书
2014/09/12 职场文书
房屋租赁授权委托书范本
2014/09/20 职场文书
公务员党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
2014年班级工作总结
2014/11/14 职场文书
2015年秋季运动会前导词
2015/07/20 职场文书
大学宣传委员竞选稿
2015/11/19 职场文书
纯CSS如何禁止用户复制网页的内容
2021/11/01 HTML / CSS