request.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. /**
  2. * 封装请求
  3. * @author Rockery(1113269755@qq.com)
  4. */
  5. import indexConfig from '@/agrcloud-config/index.config';
  6. module.exports = (params) => {
  7. let url = indexConfig.baseUrl + params.url;
  8. let method = params.method;
  9. let header = params.header || {};
  10. let data = params.data || {};
  11. if (method) {
  12. method = method.toUpperCase();
  13. if (method == "POST") {
  14. header = {
  15. // 'Content-Type': 'application/x-www-form-urlencoded',
  16. 'Access-Control-Allow-Origin': '*',
  17. accessToken: uni.getStorageSync("token")
  18. };
  19. }
  20. }
  21. // 发起请求 加载动画
  22. if (!params.hideLoading) {
  23. uni.showLoading({
  24. title: "加载中..."
  25. });
  26. }
  27. // 发起网络请求
  28. return new Promise((resolve, reject) => {
  29. uni.request({
  30. url: url,
  31. method: method || "GET",
  32. header: header,
  33. data: data,
  34. dataType: "json",
  35. sslVerify: false, //是否验证ssl证书
  36. success: res => {
  37. if (res.statusCode && res.statusCode != 200) {
  38. uni.hideLoading();
  39. uni.showToast({
  40. title: res.errMsg,
  41. icon: 'none'
  42. });
  43. reject({ code: res.statusCode, msg: res.errMsg });
  44. } else {
  45. const respData = res.data || {};
  46. if (respData.code != 200) {
  47. uni.hideLoading();
  48. uni.showToast({
  49. title: respData.msg,
  50. icon: 'none'
  51. });
  52. reject({ code: respData.code, msg: respData.msg });
  53. } else {
  54. uni.hideLoading();
  55. resolve(res.data);
  56. }
  57. }
  58. },
  59. fail: err => {
  60. uni.hideLoading();
  61. uni.showToast({
  62. title: err.errMsg,
  63. icon: 'none'
  64. });
  65. reject(err.data);
  66. }
  67. });
  68. });
  69. }