requestOpenId.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. import carhelp from '@/apis/utils/mixin.js'
  2. import * as loginApi from '@/apis/login.js'
  3. //记录请求次数和响应次数
  4. let reqCount = 0,
  5. resCount = 0;
  6. //var token=carhelp.getToken();
  7. var baseUrl=process.car.BASE_URL;
  8. if (process.env.NODE_ENV === "development") {
  9. //baseUrl="http://192.168.33.90:8086/jp-employment-server";
  10. }
  11. const request = (options) => {
  12. var token=carhelp.getToken(options);
  13. reqCount++;
  14. return new Promise((resolve, reject) => {
  15. //如果特殊链接需要传入token
  16. if(options&&options.token){
  17. token=options.token;
  18. }
  19. var url2=window.location.href.split("#")[1]
  20. if(url2.indexOf("/pages/parents/") == 0){
  21. options.data.userType = '1';
  22. }
  23. if(url2.indexOf("/pages/teacher/") == 0){
  24. options.data.userType = '2';
  25. }
  26. if(url2.indexOf("/pages/youth/") == 0){
  27. options.data.userType = '3';
  28. }
  29. uni.request({
  30. method: options.method?options.method:'get',
  31. url: baseUrl + options.url,
  32. data: options.data?options.data:{},
  33. header: options.header?{
  34. ...options.header,
  35. 'Authorization':token
  36. }:{
  37. 'Content-Type': 'application/x-www-form-urlencoded',
  38. 'X-Requested-With': 'XMLHttpRequest',
  39. 'Authorization':token
  40. }
  41. }).then((response) => {
  42. //for(var t = Date.now(); Date.now() - t <= 2000;);
  43. resCount++
  44. //防止连续请求多个接口时loading闪现
  45. let [error, res] = response;
  46. var returnObj=res.data
  47. if (res.data.code == 415&&res.data.message=='请先注册信息') {
  48. carhelp.signOut()
  49. uni.redirectTo({
  50. url: '/pages/login/index'
  51. })
  52. return;
  53. }
  54. if (res.data.code != 200) {
  55. reject(res.data.message)
  56. } else {
  57. var obj={
  58. "result": false,
  59. "message": "openid不存在",
  60. "data": null,
  61. "code": 200
  62. }
  63. // debugger
  64. if(options.data.detailed){
  65. returnObj=response
  66. }
  67. //console.log(res.data.data.regUser.userType)
  68. if(res.data.result){
  69. var resolvebl=false;
  70. var url=window.location.href.split("#")[1]
  71. if(res.data.data.regUser.userType=="1"){
  72. if(url.indexOf("/pages/parents/") == 0){
  73. resolve(returnObj);
  74. resolvebl=true;
  75. }
  76. }
  77. if(res.data.data.regUser.userType=="2"){
  78. if(url.indexOf("/pages/teacher/") == 0){
  79. resolve(returnObj);
  80. resolvebl=true;
  81. }
  82. }
  83. if(res.data.data.regUser.userType=="3"){
  84. if(url.indexOf("/pages/youth/") == 0){
  85. resolve(returnObj);
  86. resolvebl=true;
  87. }
  88. }
  89. if(res.data.data.regUser.userType=="1,2"){
  90. resolve(returnObj);
  91. resolvebl=true;
  92. }
  93. if(!resolvebl){
  94. console.log("findByOpenId 查询为空 ")
  95. resolve(obj);
  96. }else{
  97. // console.log("findByOpenId ",returnObj)
  98. }
  99. }else{
  100. resolve(returnObj);
  101. }
  102. }
  103. }).catch(error => {
  104. resCount++
  105. let [err, res] = error;
  106. if(options.detailed){
  107. reject(error)
  108. }else{
  109. reject(err)
  110. }
  111. })
  112. });
  113. }
  114. export default request