request.js 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. // uni-app请求封装
  2. export default class Request {
  3. http(router, data = {}, method,contentType) {
  4. let that = this;
  5. // let path = 'http://localhost:7014';
  6. let path = 'https://user.test.ylrztop.com/api';
  7. // let path = 'http://d7zwsx.natappfree.cc';
  8. // let path = "http://d7zwsx.natappfree.cc"
  9. // let path = "https://api.qinggetai.com"
  10. // console.log(router,'router')
  11. uni.setStorageSync('requestPath',path)
  12. // uni.showLoading({
  13. // title: '加载中'
  14. // });
  15. return new Promise((resolve, reject) => {
  16. let token = uni.getStorageSync('AppToken');
  17. var httpContentType='application/x-www-form-urlencoded';
  18. if(contentType!=undefined){
  19. //application/json;charset=UTF-8
  20. httpContentType=contentType;
  21. }
  22. var routers=router;
  23. // 请求
  24. uni.request({
  25. header: {
  26. // 'Content-Type': 'application/x-www-form-urlencoded',
  27. 'Content-Type': httpContentType,
  28. 'AppToken': token
  29. },
  30. url: `${path}${router}`,
  31. data: data,
  32. method: method,
  33. success: (res) => {
  34. //收到开发者服务器成功返回的回调函数
  35. if(res.data.code==401){//没有权限直接退出到登录界面
  36. let pages = getCurrentPages();
  37. pages.forEach(function(element) {
  38. if(element!=undefined&&element.route=="pages/auth/login"){
  39. resolve(res.data)
  40. return;
  41. }
  42. });
  43. // let url = pages[ pages.length - 1]; //当前页页面实例
  44. // //如果登录界面已打开,自动关闭
  45. // if(url!=undefined&&url.route=="pages/auth/login"){
  46. // resolve(res.data)
  47. // return;
  48. // }
  49. uni.navigateTo({
  50. url:'/pages/auth/login',
  51. success: () => {
  52. uni.hideLoading();
  53. },
  54. fail: () => {
  55. uni.hideLoading();
  56. }
  57. })
  58. return;
  59. }
  60. if (res.data.token) {
  61. uni.setStorageSync('AppToken',res.data.token)
  62. }
  63. resolve(res.data)
  64. },
  65. fail:(res) =>{
  66. //接口调用失败的回调函数
  67. },
  68. complete:(res) =>{
  69. //接口调用结束的回调函数(调用成功、失败都会执行)
  70. if (res.data && res.data.code == 401) {
  71. return false
  72. }
  73. uni.hideLoading();
  74. }
  75. })
  76. })
  77. }
  78. }