apipost接口200状态码,浏览器控制台500状态码

后端 url

登录login方法

复制代码
login(){
        this.$refs.loginForm.validate(async valid => {
          if (!valid) return
          // 由于data属性是一个json对象,需要进行解构赋值{data:result},进行状态码判断
          const {data: result} = await this.$http.post('/api/doLogin',this.loginForm)  // 填写的表单数据都保存在表单数据loginForm对象里
          console.log('后端data数据内容',result)
          if (result.status !== 200) {
            return console.log('登录失败')
          }
          //先打印到浏览器控制台,看结果
          console.log('登录成功')
          this.$router.push('/home')
        })
      }

导致这个问题的原因 是前端没有携带 用户和密码这两个参数,

需要使用qs库 将对象序列为字符串 或将字符串转换为对象

安装 qs 库

yarn add qs 或 npm install qs

引入qs

复制代码
import qs from 'qs'
login(){
        const that = this
        this.$refs.loginForm.validate(async valid => {
          if (!valid) return
          // 将loginForm对象转换为查询字符串
          var data = qs.stringify(this.loginForm)
          // 由于data属性是一个json对象,需要进行解构赋值{data:result},进行状态码判断
           await this.$http.post('/api/doLogin',data).then(function (response){
            if (response.data.status === 200){
             console.log('登录成功')
              // ElMessage({message: '登录成功',type: 'success'})
              that.$router.push('/home')
            }else {
              console.log(response.data.status)
              console.log('api后端接口状态')
            }
          })

        })
      }
相关推荐
晓纪同学14 小时前
EffctiveC++_第三章_资源管理
开发语言·c++·算法
蚊子码农14 小时前
每日一题--C语言指针与内存泄漏:一道小问题的深度复盘
c语言·开发语言
Fanfanaas14 小时前
Linux 系统编程 进程篇(一)
linux·运维·服务器·c语言·开发语言·网络·学习
cc.ChenLy14 小时前
浏览器缓存机制详解:如何彻底解决前端代码更新后的缓存问题
前端
星辰徐哥14 小时前
ARP缓存表:作用、查看方法与刷新技巧
开发语言·缓存·php
阿珊和她的猫14 小时前
使用 TypeScript 实现数组类型判断方法
javascript·typescript·状态模式
ego.iblacat14 小时前
lvs 集群部署
开发语言·php·lvs
XTTX11014 小时前
Vue3+Cesium电子围栏效果
前端·javascript·vue.js
沐雪轻挽萤14 小时前
6. C++17新特性-编译期 if 语句 (if constexpr)
开发语言·c++
水云桐程序员14 小时前
C语言编程基础,输入与输出
c语言·开发语言·算法