user.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. import {
  2. useUserServer
  3. } from '@/config/server-info'
  4. import axios from '@/plugins/axios'
  5. import userType from '@/server/enums/user-type'
  6. // 注册,默认为注册学生账号
  7. export function register ({ name, email, emailCode, phone, phoneCode, password, type = userType.student }) {
  8. const data = {
  9. name,
  10. email,
  11. emailCode,
  12. phone,
  13. phoneCode,
  14. password,
  15. type
  16. }
  17. return axios
  18. .post(useUserServer('/register'), data)
  19. .then(res => res.data)
  20. }
  21. // 登录
  22. export function loginByEmail ({ email, password }) {
  23. const data = {
  24. username: email,
  25. password
  26. }
  27. return axios
  28. .post(useUserServer('/login/email'), data)
  29. .then(res => res.data)
  30. }
  31. // 登出
  32. export function logout () {
  33. return axios
  34. .post(useUserServer('/logout'))
  35. .then(res => {})
  36. }
  37. // 修改用户信息(目前只有姓名)
  38. export function modifyUser ({ name }) {
  39. const data = {
  40. name
  41. }
  42. return axios
  43. .put(useUserServer(), data)
  44. .then(res => res.data)
  45. }
  46. // 通过邮箱验证重设密码
  47. export function resetPasswordByEmail({ email, code, password }) {
  48. const data = {
  49. username: email,
  50. code,
  51. password
  52. }
  53. return axios
  54. .put(useUserServer('/resetPassword/email'), data)
  55. .then(res => {})
  56. }
  57. // 获取用户具体信息(可用于验证登录状态)
  58. export function getUserInfo () {
  59. return axios
  60. .get(useUserServer())
  61. .then(res => res.data)
  62. }