http_20190321115121.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. import axios from 'axios';
  2. // import Cookies from "js-cookie";
  3. import {
  4. Message
  5. } from 'element-ui';
  6. axios.defaults.timeout = 5000;
  7. axios.defaults.baseURL = 'http://whiteboardtest.ai160.com/';
  8. /***
  9. *
  10. * 复制于 https://www.cnblogs.com/ldlx-mars/p/7908950.html
  11. *
  12. */
  13. //http request 拦截器
  14. axios.interceptors.request.use(
  15. config => {
  16. // const token = Cookies('token'); //注意使用的时候需要引入cookie方法,推荐js-cookie
  17. config.data = JSON.stringify(config.data);
  18. console.log(sessionStorage.getItem('uid'))
  19. const uid = sessionStorage.getItem('uid') ? sessionStorage.getItem('uid') : '';
  20. config.headers = {
  21. 'Content-Type': 'application/json',
  22. 'uid': uid,
  23. }
  24. // if(token){
  25. // config.params = {'X-Token':token}
  26. // }
  27. return config;
  28. },
  29. error => {
  30. return Promise.reject(err);
  31. }
  32. );
  33. //http response 拦截器 暂时不用
  34. /* axios.interceptors.response.use(
  35. response => {
  36. if (response.data.errCode == 2) {
  37. router.push({
  38. path: "/login",
  39. querry: {
  40. redirect: router.currentRoute.fullPath
  41. } //从哪个页面跳转
  42. })
  43. }
  44. return response;
  45. },
  46. error => {
  47. return Promise.reject(error)
  48. }
  49. ) */
  50. /**
  51. * 封装get方法
  52. * @param url
  53. * @param data
  54. * @returns {Promise}
  55. */
  56. export function fetch(url, params = {}) {
  57. return new Promise((resolve, reject) => {
  58. axios.get(url, {
  59. params: params
  60. })
  61. .then(res => {
  62. resolve(res.data);
  63. })
  64. .catch(err => {
  65. reject(err)
  66. })
  67. })
  68. }
  69. /**
  70. * 封装post请求
  71. * @param url
  72. * @param data
  73. * @returns {Promise}
  74. */
  75. export function post(url, data = {}) {
  76. console.log(data)
  77. return new Promise((resolve, reject) => {
  78. axios.post(url, data)
  79. .then(response => {
  80. resolve(response.data);
  81. }, err => {
  82. reject(err)
  83. })
  84. })
  85. }
  86. /**
  87. * 封装patch请求
  88. * @param url
  89. * @param data
  90. * @returns {Promise}
  91. */
  92. export function patch(url, data = {}) {
  93. return new Promise((resolve, reject) => {
  94. axios.patch(url, data)
  95. .then(response => {
  96. resolve(response.data);
  97. }, err => {
  98. reject(err)
  99. })
  100. })
  101. }
  102. /**
  103. * 封装put请求
  104. * @param url
  105. * @param data
  106. * @returns {Promise}
  107. */
  108. export function put(url, data = {}) {
  109. return new Promise((resolve, reject) => {
  110. axios.put(url, data)
  111. .then(response => {
  112. resolve(response.data);
  113. }, err => {
  114. reject(err)
  115. })
  116. })
  117. }