request1.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. /**
  2. * author:AbuCoder
  3. * date:2022年5月22日13:53:23
  4. * 封装的异步请求处理函数
  5. * 需要在main.js引入与挂载 import request from 'utils/request.js' //引入异步请求函数
  6. * Vue.prototype.request = request.request //挂载到全局
  7. * 使用方法为:
  8. * request('接口名称',{key:value},'请求方式(默认为GET)')
  9. * .then(res=>{console.log(res)})
  10. */
  11. import { getToken} from "./auth";
  12. import { baseUrl,uploadUrl } from "./apiconfig";
  13. // let baseUrl = 'https://ga.rasmall.cn/prod-api/wxapi/';
  14. // let baseUrl = 'http://localhost:8083/wxapi/'
  15. async function request(mehtod, params, type, callBack) {
  16. //创建一个名为request请求的方法函数
  17. if (!type) {
  18. type = 'GET';
  19. }
  20. let header = {
  21. //设置请求头信息
  22. // 'Authorization': getToken(),
  23. // 'Authorization': 'eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImQzYWQ1NjAyLTNlMTUtNGFhMi04NTg5LWRhNTExNWM4ZTExMSJ9.5CVV8Al17dM_9LcY-DKbOf9Px7E5iBC9o62ZPxl_jcDe3VZM4IZk4p0IMx4TNvQXF843b8jKEV8gv6nB2OCc2Q',
  24. // 'X-Requested-With': 'XMLHttpRequest',
  25. "Accept": "application/json",
  26. "Content-Type": "application/json; charset=UTF-8"
  27. };
  28. let http = {
  29. url: baseUrl + mehtod,
  30. data: params,
  31. method: type,
  32. header: header
  33. };
  34. let promise = new Promise((resolve, reject) => {
  35. uni.request(http).then(res => {
  36. console.log('接口数据',res)
  37. // let newdata = res[1].data; // if (newdata.code == 403) {
  38. let newdata = res;
  39. if (!newdata) {
  40. //如果错误码为 -1 提示
  41. uni.showToast({
  42. title: '请求失败,请稍后重试',
  43. icon: 'none'
  44. });
  45. }
  46. resolve(res);
  47. }).catch(err => {
  48. reject(err);
  49. console.log(err);
  50. });
  51. });
  52. return promise;
  53. }
  54. async function requestJson(mehtod, params, type, headerParams, callBack) {
  55. //创建一个名为request请求的方法函数
  56. let header = {
  57. //设置请求头信息
  58. 'X-Requested-With': 'XMLHttpRequest',
  59. "Accept": "application/json",
  60. "Content-Type": "application/json; charset=UTF-8"
  61. };
  62. if(headerParams){
  63. header = Object.assign(header, headerParams);
  64. }
  65. let http = {
  66. url: mehtod,
  67. data: params,
  68. method: type,
  69. header: header
  70. };
  71. let promise = new Promise((resolve, reject) => {
  72. uni.request(http).then(res => {
  73. resolve(res);
  74. }).catch(err => {
  75. reject(err);
  76. console.log(err);
  77. });
  78. });
  79. return promise;
  80. }
  81. async function requestForm(mehtod, params, type, callBack) {
  82. //创建一个名为request请求的方法函数
  83. let header = {
  84. //设置请求头信息
  85. 'X-Requested-With': 'XMLHttpRequest',
  86. "Accept": "application/json",
  87. "Content-Type": "application/x-www-form-urlencoded"
  88. };
  89. let http = {
  90. url: mehtod,
  91. data: params,
  92. method: type,
  93. header: header
  94. };
  95. let promise = new Promise((resolve, reject) => {
  96. uni.request(http).then(res => {
  97. resolve(res);
  98. }).catch(err => {
  99. reject(err);
  100. console.log(err);
  101. });
  102. });
  103. return promise;
  104. }
  105. export default {
  106. request,
  107. requestJson,
  108. requestForm
  109. };