dispatchRequest.js 826 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. export default (config) => {
  2. if (config.baseUrl && !isAbsoluteURL(config.url)) {
  3. config.url = combineURLs(config.baseUrl, config.url);
  4. }
  5. return new Promise((resolve, reject) => {
  6. config = Object.assign(config, {
  7. success: res => {
  8. debugger
  9. if (res.statusCode === 200) {
  10. resolve(res);
  11. }else if(res.statusCode === 401){
  12. // 未授权,跳转回登录页
  13. uni.reLaunch({
  14. url: "/pages/Login/Login",
  15. });
  16. reject(res);
  17. }else {
  18. reject(res);
  19. }
  20. },
  21. fail: res => {
  22. reject(res);
  23. }
  24. });
  25. uni.request(config);
  26. });
  27. }
  28. const combineURLs = (baseUrl, relativeUrl) => {
  29. return relativeUrl ?
  30. baseUrl.replace(/\/+$/, '') + '/' + relativeUrl.replace(/^\/+/, '') :
  31. baseUrl;
  32. }
  33. const isAbsoluteURL = (url) => {
  34. return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(url);
  35. };