api.js 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. import config from '../config.js';
  2. const getDomain = (uri, method, type) => {
  3. let wx_env = config.wx_miniProgram;
  4. let system = config.system;
  5. let url = config.serverUrl;
  6. let Fileurl = config.serverFile;
  7. if (type && type == 'file') return Fileurl + `/files` + uri;
  8. if (uri.startsWith('/wechat/api')) return 'https://broadcast.waityou24.cn' + uri;
  9. else return url + `/travel/v1/api` + uri;
  10. };
  11. // 获取token
  12. export const getToken = async (uri, method = 'GET', data, type) => {
  13. let baseUrl = getDomain(uri, method, type);
  14. let header = {
  15. token: data.token
  16. };
  17. return new Promise((resolve, reject) => {
  18. uni.request({
  19. url: baseUrl,
  20. method: method || 'GET',
  21. data: data || {},
  22. header,
  23. success: (res) => {
  24. resolve(res.data);
  25. },
  26. fail: (err) => {
  27. uni.showToast({
  28. title: '请求接口失败',
  29. icon: 'fail',
  30. });
  31. reject(err.data);
  32. },
  33. });
  34. });
  35. };
  36. export const requestBase = async (uri, method = 'GET', data, type) => {
  37. let baseUrl = getDomain(uri, method, type);
  38. let header = {};
  39. const token = uni.getStorageSync('token');
  40. if (token) header.token = token;
  41. return new Promise((resolve, reject) => {
  42. uni.request({
  43. url: baseUrl,
  44. method: method || 'GET',
  45. data: data || {},
  46. header,
  47. success: (res) => {
  48. resolve(res.data);
  49. },
  50. fail: (err) => {
  51. uni.showToast({
  52. title: '请求接口失败',
  53. icon: 'fail',
  54. });
  55. reject(err.data);
  56. },
  57. });
  58. });
  59. };
  60. export const requestFile = (uri, method, data, type) => {
  61. let baseUrl = getDomain(uri, method, type);
  62. return new Promise((resolve, reject) => {
  63. uni.uploadFile({
  64. url: baseUrl,
  65. filePath: data,
  66. name: method || 'file',
  67. formData: {},
  68. success: (res) => {
  69. let data = JSON.parse(res.data);
  70. if (data.errcode != '0') {
  71. return uni.showToast({
  72. title: data.errmsg,
  73. icon: 'error',
  74. });
  75. }
  76. resolve(data);
  77. },
  78. fail: (err) => {
  79. let data = JSON.parse(err.data);
  80. uni.showToast({
  81. title: '请求接口失败',
  82. icon: 'fail',
  83. });
  84. reject(data);
  85. },
  86. });
  87. });
  88. };