api.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. import http from './http' // 引入你封装的 http.js
  2. import { Message } from 'element-ui';
  3. // 通用 POST 请求封装
  4. export function post(url, param) {
  5. return new Promise((resolve, reject) => {
  6. http.post(
  7. url,
  8. { ...param },
  9. res => {
  10. if (res.code === 'ok') {
  11. resolve(res)
  12. } else {
  13. Message.error(res.msg)
  14. reject(res)
  15. }
  16. },
  17. err => {
  18. Message.error(err)
  19. reject(err)
  20. }
  21. )
  22. })
  23. }
  24. // 通用 GET 请求封装
  25. export function getData(url) {
  26. return new Promise((resolve, reject) => {
  27. http.get(
  28. url,
  29. res => {
  30. if (res.code === 'ok') {
  31. resolve(res)
  32. } else {
  33. Message.error(res.msg)
  34. reject(res)
  35. }
  36. },
  37. err => {
  38. reject(err)
  39. }
  40. )
  41. })
  42. }
  43. // 上传文件(如果使用 FormData 格式)
  44. export function uploadFile(url, formData) {
  45. return new Promise((resolve, reject) => {
  46. http.uploadFileFormData(
  47. url,
  48. formData,
  49. res => {
  50. if (res.code === 'ok') {
  51. resolve(res)
  52. } else {
  53. reject(res)
  54. }
  55. },
  56. err => {
  57. reject(err)
  58. }
  59. )
  60. })
  61. }
  62. export function checkAndAddUpload(str) {
  63. if(!str) {
  64. return '';
  65. }
  66. if (str.includes('/upload/')) {
  67. return str;
  68. } else {
  69. return '/upload/' + str;
  70. }
  71. }