api.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. import axios from 'axios';
  2. // var baseURL='https://www.scxjc.club'
  3. var baseURL = ''
  4. axios.interceptors.request.use(
  5. config => {
  6. const token = localStorage.getItem('token');
  7. // if (config.url.indexOf('downloadzip') >= 0) {
  8. if (token) { // 判断是否存在token,如果存在的话,则每个http header都加上token
  9. config.headers.Authorization = `${token}`;
  10. } else {
  11. //未登录
  12. window.location.hash = "/login";
  13. }
  14. // }
  15. return config;
  16. },
  17. err => {
  18. return Promise.reject(err);
  19. });
  20. axios.interceptors.response.use(function (response) {
  21. // console.log(response.headers)
  22. // IE 8-9
  23. if (response.data == null && response.config.responseType === 'json' && response.request.responseText != null) {
  24. try {
  25. // eslint-disable-next-line no-param-reassign
  26. response.data = JSON.parse(response.request.responseText);
  27. } catch (e) {
  28. // ignored
  29. }
  30. }
  31. // 对响应数据做点什么
  32. if (response.data.code == 401) {
  33. window.location.hash = "/login";
  34. }
  35. if (response.data.code == 305) {
  36. window.location.hash = "/";
  37. }
  38. return response;
  39. }, function (error) {
  40. // 对响应错误做点什么
  41. if (error.request.status == 403) {
  42. window.location.hash = "/login";
  43. }
  44. // console.log(Object.getOwnPropertyNames(error))
  45. // console.log(error.request,error.message)
  46. return Promise.reject(error);
  47. });
  48. export default {
  49. //登录
  50. login: params => {
  51. return axios.post(`${baseURL}/api/account/login`, params);
  52. },
  53. logout: params => {
  54. return axios.post(`${baseURL}/api/account/logout`, params);
  55. },
  56. // 全局账号信息
  57. getAccountInfo: params => {
  58. return axios.get(`${baseURL}/api/account/info`)
  59. },
  60. // 验证码
  61. getCode: params => {
  62. return axios.get(`${baseURL}/api/account/imgcode`)
  63. },
  64. // 账号
  65. getUserList: params => {
  66. return axios.get(`${baseURL}/api/admin/user/list`,{params:params})
  67. },
  68. // 获取用户待选期刊列表
  69. getUserJournals:() => {
  70. return axios.get(`${baseURL}/api/admin/user/journals`)
  71. },
  72. // 获取用户待选角色列表
  73. getUserRoles:() => {
  74. return axios.get(`${baseURL}/api/admin/user/roles`)
  75. },
  76. //新增管理员
  77. addUser:params => {
  78. return axios.post(`${baseURL}/api/admin/user`, params);
  79. },
  80. // 修改管理员
  81. editUser:params => {
  82. return axios.put(`${baseURL}/api/admin/user`, params);
  83. },
  84. // 删除管理员
  85. delUser:params => {
  86. return axios.delete(`${baseURL}/api/admin/user`, {params:params});
  87. },
  88. // 获取角色权限
  89. getUserPermissions:() => {
  90. return axios.get(`${baseURL}/api/admin/user/permissions`)
  91. },
  92. }