4 登陆认证模块配置

登录验证

首先我们确认一件事情,app端与服务器通信的时候,我们需要保证用户登录的唯一性。简单的来说,就是我们通过用户名和密码登录的时候要能够保存住用户的唯一信息,在web端开发的时候,我们通常使用session或者cookie来存在用户唯一值,然后进行判断。可是这种方法并不适用与移动端开发,移动端开发一般常用的是基于token的方式。

token是什么,如何实现,这个自行百度。

方框内的内容代表的意思是:
使用vue-router的导航钩子,在每次单页面打开之前,beforeEach函数执行,如果当前页面需要登录权限进入下一个流程,判断当前meta中是否包含token信息,如果包含代表是登录状态,如果不包含返回到登陆页。


登录配置.png
<template>
        <div class="padding" >

          <div>
            <img src="static/img/logo2.png" style="width:100%;height:250px">
          </div>

            <div class="padding-top">
            
              <von-input type="text" v-model="username" placeholder="请输入用户名" label="用户名"></von-input>
              <von-input type="password" v-model="password" placeholder="请输入密码" label="密码"></von-input>
     
                <md-button class="button button-positive  button-block" @click.native="login()">
                   登录
                </md-button>
            </div>
        </div>
</template>

<script>
import { RECORD_USERINFO } from "store/mutation-type.js";
import { accountLogin} from "service/getData";

export default {
  data() {
    return {
      username: "",
      password: ""
    };
  },
  created() {
    if(localStorage.getItem('USER_TOKEN')!=''){
        this.$router.push({ path: "/home" });
    }
  },
  methods: {
    async login() {
      if(this.username == ""||this.password==""){
         $toast.show("用户名或密码错误", 1000);
      }
      else{
        let {State, Result,Msg} = await accountLogin(
                this.username,
                this.password
              );

              //登陆验证
              if (State==1) {
                let { Ticket } = Result;
                this.$store.commit(RECORD_USERINFO, { token:Ticket, user:Result });
                  $router.push({ path: "/home" });
              } else {
                $toast.show(Msg, 1000);
              }
      }
     
    }
  }
};
</script>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,388评论 25 708
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,957评论 19 139
  • 点击查看原文 Web SDK 开发手册 SDK 概述 网易云信 SDK 为 Web 应用提供一个完善的 IM 系统...
    layjoy阅读 13,943评论 0 15
  • 话说着我们就座了。文江很绅士的,询问我们分别想喝什么,然后叫来服务员,准确无误的传达给他。我斜着眼睛悄悄看了一眼文...
    小雅超会护肤阅读 248评论 0 0
  • 毛姆的小说很多都在思考一个问题,人生的问题。从《人性的枷锁》中那个苦苦思考人生意义的瘸腿少年,到《月亮和六便士》里...
    正午阅读 3,207评论 0 1