Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Hooke
/
mlaj
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
hookehuyr
2025-03-26 00:43:23 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
516f6116dbacde097f844a5e6cec91f6260822a0
516f6116
1 parent
a1f7ce90
refactor(api): 更新API路径和参数以支持手机号登录
统一将用户相关接口的路径和参数从邮箱改为手机号,并更新相关文档和前端登录页面
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
34 additions
and
35 deletions
src/api/common.js
src/api/users.js
src/views/auth/LoginPage.vue
src/api/common.js
View file @
516f611
/*
* @Date: 2022-06-17 14:54:29
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 202
2-12-01 16:26:27
* @FilePath: /
data-table
/src/api/common.js
* @LastEditTime: 202
5-03-26 00:42:59
* @FilePath: /
mlaj
/src/api/common.js
* @Description: 通用接口
*/
import
{
fn
,
fetch
,
uploadFn
}
from
'@/api/fn'
;
const
Api
=
{
SMS
:
'/srv/?a=sms'
,
SMS
:
'/srv/?a=sms
_code
'
,
TOKEN
:
'/srv/?a=upload'
,
SAVE_FILE
:
'/srv/?a=upload&t=save_file'
,
}
/**
* @description: 发送验证码
* @param {*}
phon
e 手机号码
* @param {*}
mobil
e 手机号码
* @returns
*/
export
const
smsAPI
=
(
params
)
=>
fn
(
fetch
.
post
(
Api
.
SMS
,
params
));
...
...
src/api/users.js
View file @
516f611
/*
* @Date: 2025-03-23 23:45:53
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2025-03-2
3 23:45:54
* @LastEditTime: 2025-03-2
6 00:41:11
* @FilePath: /mlaj/src/api/users.js
* @Description: 用户相关接口
*/
import
{
fn
,
fetch
}
from
'./fn'
;
const
Api
=
{
USER_LOGIN
:
'/users/login'
,
USER_REGISTER
:
'/users/register'
,
USER_INFO
:
'/users/info'
,
USER_UPDATE
:
'/users/update'
,
USER_AVATAR
:
'/users/avatar'
,
USER_PASSWORD
:
'/users/password'
,
USER_LOGIN
:
'/srv/?a=user_login'
,
USER_REGISTER
:
'/srv/?a=user_register'
,
USER_INFO
:
'/srv/?a=user_info'
,
USER_UPDATE
:
'/srv/?a=user_edit'
,
USER_PASSWORD
:
'/srv/?a=user_reset_password'
,
}
/**
* @description: 用户登录
* @param:
email 用户邮箱
* @param:
mobile 手机号
* @param: password 用户密码
*/
export
const
loginAPI
=
(
params
)
=>
fn
(
fetch
.
post
(
Api
.
USER_LOGIN
,
params
));
...
...
@@ -26,31 +25,30 @@ export const loginAPI = (params) => fn(fetch.post(Api.USER_LOGIN, params));
/**
* @description: 用户注册
* @param: name 用户名称
* @param: email 用户邮箱
* @param: mobile 手机号
* @param: sms_code 短信验证码
* @param: password 用户密码
* @param: avatar 头像
*/
export
const
registerAPI
=
(
params
)
=>
fn
(
fetch
.
post
(
Api
.
USER_REGISTER
,
params
));
/**
* @description: 获取用户信息
* @return: data: { user: { id, name, mobile, avatar } }
*/
export
const
getUserInfoAPI
=
()
=>
fn
(
fetch
.
get
(
Api
.
USER_INFO
));
/**
* @description: 更新用户信息
* @param: name 用户名称
* @param: avatar 头像
*/
export
const
updateUserInfoAPI
=
(
params
)
=>
fn
(
fetch
.
put
(
Api
.
USER_UPDATE
,
params
));
/**
* @description: 上传用户头像
* @param: avatar 头像文件
* @description: 忘记密码
* @param: mobile 手机号
* @param: sms_code 短信验证码
* @param: password 密码
*/
export
const
uploadAvatarAPI
=
(
formData
)
=>
fn
(
fetch
.
post
(
Api
.
USER_AVATAR
,
formData
));
/**
* @description: 修改用户密码
* @param: oldPassword 原密码
* @param: newPassword 新密码
*/
export
const
updatePasswordAPI
=
(
params
)
=>
fn
(
fetch
.
put
(
Api
.
USER_PASSWORD
,
params
));
export
const
resetPasswordAPI
=
(
params
)
=>
fn
(
fetch
.
put
(
Api
.
USER_PASSWORD
,
params
));
...
...
src/views/auth/LoginPage.vue
View file @
516f611
...
...
@@ -13,15 +13,15 @@
<form class="space-y-6" @submit.prevent="handleSubmit">
<div>
<label for="
email
" class="block text-sm font-medium text-gray-700">
邮箱 /
手机号
<label for="
mobile
" class="block text-sm font-medium text-gray-700">
手机号
</label>
<input
id="
email
"
v-model="
email
"
name="
email
"
id="
mobile
"
v-model="
mobile
"
name="
mobile
"
type="text"
autocomplete="
email
"
autocomplete="
mobile
"
required
class="mt-1 block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-green-500 focus:border-green-500"
/>
...
...
@@ -114,22 +114,23 @@ import { ref } from 'vue'
import { useRoute, useRouter } from 'vue-router'
import FrostedGlass from '@/components/ui/FrostedGlass.vue'
import { useAuth } from '@/contexts/auth'
import { useTitle } from '@vueuse/core'
import { loginAPI } from '@/api/users'
import { useTitle } from '@vueuse/core'
const $route = useRoute();
const $router = useRouter();
useTitle($route.meta.title);
const router = useRouter()
const { login } = useAuth()
const
email = ref('user1@example.com
')
const
mobile = ref('13761653761
')
const password = ref('password123')
const error = ref('')
const loading = ref(false)
// 原登录逻辑
// const handleSubmit = async () => {
// if (!
email
.value || !password.value) {
// if (!
mobile
.value || !password.value) {
// error.value = '请填写所有字段'
// return
// }
...
...
@@ -140,7 +141,7 @@ const loading = ref(false)
// // 调用登录接口
// const response = await loginAPI({
//
email: email
.value,
//
mobile: mobile
.value,
// password: password.value
// })
...
...
@@ -162,7 +163,7 @@ const loading = ref(false)
// 临时登录逻辑 - 支持任意输入
const handleSubmit = async () => {
if (!
email
.value || !password.value) {
if (!
mobile
.value || !password.value) {
error.value = '请填写所有字段'
return
}
...
...
Please
register
or
login
to post a comment