vue3 axios 登录 post 失败
axios get 获取数据是成功的。
错误信息:
浏览器未向后端发起网络请求
:7777/login:1
Uncaught (in promise)
{username: Array(1), password: Array(1)}
password: Array(1)
0: {message: '请输入密码', fieldValue: '', field: 'password'}
length: 1
[[Prototype]]: Array(0)
username: Array(1)
0: {message: '请输入用户名', fieldValue: '', field: 'username'}
length: 1
[[Prototype]]: Array(0)
[[Prototype]]: Object
登录方法:
const login = async () => {
try {
await form.value.validate()
const res = await userLoginService(formModel.value)
userStore.setToken(res.data.token)
ElMessage.success('登录成功')
router.push('/')
} catch (error) {
console.error('Error fetching data:', error)
}
}
登录接口:
//登录接口
export const userLoginService = ({ username, password }) => {
try {
return request.post('/admin/empaccount/login', { username, password })
} catch (error) {
console.error('Error fetching data:', error)
}
}
前端代理:
//前端服务配置修改
server: {
host: '0.0.0.0', //服务启动地址
port: 7777, //服务启动端口
open: true, //启动后是否打开浏览器
proxy: {
'/api': {
target: 'http://localhost:8888/',
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '')
}
}
}
swagger post 后端 成功
post 地址 /admin/empaccount/login
请求:
{
"username": "admin",
"password": "123456"
}
响应:
{
"code": 1,
"msg": null,
"data": {
"id": 1,
"userName": "admin",
"name": null,
"token": "eyJhbGciOiJIUzI1NiJ9.eyJlbXBJZCI6MSwiZXhwIjoxNzE1MDgyMzA4fQ.OYalOHrwmf9Xz1_IChAVHMggpeia_5XHsF_8_kyjMtA"
}
}