api.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. import config from '../config.js';
  2. const getDomain = (uri, method, type) => {
  3. let Jcyjdtglpturl = config.jcyjdtglpt;
  4. let FreeLabelurl = config.freeLabel;
  5. let Fileurl = config.serverFile;
  6. if (type && type == 'file') return Fileurl + `/files` + uri;
  7. else if (type && type == 'jcyjdtglpt') return Jcyjdtglpturl + `/jcyjdtglpt/v1/api` + uri;
  8. else if (type && type == 'freeLabel') return FreeLabelurl + `/freeLabel/api` + uri;
  9. };
  10. // 获取token
  11. const getToken = () => {
  12. try {
  13. const value = uni.getStorageSync('token');
  14. if (value) return value;
  15. } catch {}
  16. };
  17. export const requestBase = async (uri, method = 'GET', data, type) => {
  18. let baseUrl = getDomain(uri, method, type);
  19. let header = {};
  20. const token = uni.getStorageSync('token');
  21. if (token) header.token = token;
  22. return new Promise((resolve, reject) => {
  23. uni.request({
  24. url: baseUrl,
  25. method: method || 'GET',
  26. data: data || {},
  27. header,
  28. success: (res) => {
  29. resolve(res.data);
  30. },
  31. fail: (err) => {
  32. uni.showToast({
  33. title: '请求接口失败',
  34. icon: 'fail',
  35. });
  36. reject(err.data);
  37. },
  38. });
  39. });
  40. };
  41. export const requestFile = (uri, method, data, type) => {
  42. let baseUrl = getDomain(uri, method, type);
  43. return new Promise((resolve, reject) => {
  44. uni.uploadFile({
  45. url: baseUrl,
  46. filePath: data,
  47. name: method || 'file',
  48. formData: {},
  49. success: (res) => {
  50. let data = JSON.parse(res.data);
  51. if (data.errcode != '0') {
  52. return uni.showToast({
  53. title: data.errmsg,
  54. icon: 'error',
  55. });
  56. }
  57. resolve(data);
  58. },
  59. fail: (err) => {
  60. let data = JSON.parse(err.data);
  61. uni.showToast({
  62. title: '请求接口失败',
  63. icon: 'fail',
  64. });
  65. reject(data);
  66. },
  67. });
  68. });
  69. };