http.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /**** http.js ****/
  2. // 导入封装好的axios实例
  3. import request from './request'
  4. import upload from './upload'
  5. const http = {
  6. /**
  7. * methods: 请求
  8. * @param url 请求地址
  9. * @param params 请求参数
  10. */
  11. get(url, params) {
  12. const config = {
  13. method: 'get',
  14. url: url
  15. }
  16. if (params) config.params = params
  17. return request(config)
  18. },
  19. post(url, params) {
  20. const config = {
  21. method: 'post',
  22. url: url
  23. }
  24. if (params) config.data = params
  25. return request(config)
  26. },
  27. put(url, params) {
  28. const config = {
  29. method: 'put',
  30. url: url
  31. }
  32. if (params) config.data = params
  33. return request(config)
  34. },
  35. delete(url, params) {
  36. const config = {
  37. method: 'delete',
  38. url: url
  39. }
  40. if (params) config.params = params
  41. return request(config)
  42. },
  43. upload(url, params, type, progress) {
  44. const config = {
  45. headers: {
  46. 'Content-Type': type
  47. },
  48. transformRequest: [function(data) {
  49. return data
  50. }],
  51. onUploadProgress: progressEvent => {
  52. let persent = (progressEvent.loaded / progressEvent.total * 100 | 0);
  53. progress(persent);
  54. }
  55. }
  56. return upload(url, params, config)
  57. }
  58. }
  59. //导出
  60. export default http