user.js 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. const tokens = {
  2. admin: {
  3. token: 'admin-token'
  4. },
  5. editor: {
  6. token: 'editor-token'
  7. }
  8. }
  9. const users = {
  10. 'admin-token': {
  11. roles: ['admin'],
  12. auths: [
  13. 'icon:view', 'example:view'
  14. ],
  15. introduction: 'I am a super administrator',
  16. avatar: 'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif',
  17. name: 'Super Admin'
  18. },
  19. 'editor-token': {
  20. roles: ['editor'],
  21. auths: [],
  22. introduction: 'I am an editor',
  23. avatar: 'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif',
  24. name: 'Normal Editor'
  25. }
  26. }
  27. module.exports = [
  28. // user login
  29. {
  30. url: '/vue-element-admin/user/login',
  31. type: 'post',
  32. response: config => {
  33. const { username } = config.body
  34. const token = tokens[username]
  35. // mock error
  36. if (!token) {
  37. return {
  38. code: 60204,
  39. message: 'Account and password are incorrect.'
  40. }
  41. }
  42. return {
  43. code: 20000,
  44. data: token
  45. }
  46. }
  47. },
  48. // get user info
  49. {
  50. url: '/vue-element-admin/user/info\.*',
  51. type: 'get',
  52. response: config => {
  53. const { token } = config.query
  54. const info = users[token]
  55. // mock error
  56. if (!info) {
  57. return {
  58. code: 50008,
  59. message: 'Login failed, unable to get user details.'
  60. }
  61. }
  62. return {
  63. code: 20000,
  64. data: info
  65. }
  66. }
  67. },
  68. // user logout
  69. {
  70. url: '/vue-element-admin/user/logout',
  71. type: 'post',
  72. response: _ => {
  73. return {
  74. code: 20000,
  75. data: 'success'
  76. }
  77. }
  78. }
  79. ]