request.js 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459
  1. import {
  2. config
  3. } from './config.js'
  4. import {
  5. tansParams
  6. } from "./util.js";
  7. export const apiResquest = (prams) => {
  8. return new Promise((resolve, reject) => {
  9. let url = config.base_url + prams.url;
  10. uni.showLoading({
  11. title: '加载中',
  12. mask: true
  13. });
  14. // get请求映射params参数
  15. if (prams.method === 'GET' && prams.data) {
  16. url = url + '?' + tansParams(prams.data);
  17. url = url.slice(0, -1);
  18. prams.data = {};
  19. }
  20. return uni.request({
  21. timeout:10000,
  22. url: url,
  23. data: {
  24. ...prams.data
  25. },
  26. method: prams.method,
  27. header: {
  28. 'content-type': 'application/json;charset=utf-8',
  29. 'Authorization': uni.getStorageSync('token')
  30. },
  31. success: (res) => {
  32. // 成功
  33. uni.hideLoading()
  34. if (res.statusCode == 200) {
  35. if (res.data.code == 200) {
  36. resolve(res);
  37. } else if (res.data.code == 401) {
  38. loginTimeout();
  39. } else {
  40. uni.showToast({
  41. mask: true,
  42. icon: "none",
  43. position: "center",
  44. title: res.data.message,
  45. duration: 2000
  46. });
  47. resolve(res);
  48. }
  49. } else if (res.statusCode == 401) {
  50. loginTimeout();
  51. } else {
  52. uni.showToast({
  53. mask: true,
  54. icon: "none",
  55. position: "center",
  56. title: '连接异常,请联系管理员.',
  57. duration: 2000
  58. });
  59. resolve(res);
  60. }
  61. },
  62. fail: (err) => {
  63. // 失败
  64. uni.hideLoading()
  65. uni.showToast({
  66. mask: true,
  67. icon: "none",
  68. position: "center",
  69. title: '出错啦~请联系管理员!',
  70. duration: 2000
  71. });
  72. },
  73. complete: () => {
  74. // 完成
  75. }
  76. });
  77. })
  78. }
  79. export const apiResquestOutside = (prams) => {
  80. return new Promise((resolve, reject) => {
  81. let url = prams.url;
  82. uni.showLoading({
  83. title: '加载中',
  84. mask: true
  85. });
  86. // get请求映射params参数
  87. if (prams.method === 'GET' && prams.data) {
  88. url = url + '?' + tansParams(prams.data);
  89. url = url.slice(0, -1);
  90. prams.data = {};
  91. }
  92. return uni.request({
  93. timeout:10000,
  94. url: url,
  95. data: {
  96. ...prams.data
  97. },
  98. method: prams.method,
  99. header: {
  100. 'content-type': 'application/json;charset=utf-8',
  101. 'Authorization': uni.getStorageSync('token')
  102. },
  103. success: (res) => {
  104. // 成功
  105. uni.hideLoading()
  106. if (res.statusCode == 200) {
  107. if (res.data.code == 200) {
  108. resolve(res);
  109. } else if (res.data.code == 401) {
  110. loginTimeout();
  111. } else {
  112. uni.showToast({
  113. mask: true,
  114. icon: "none",
  115. position: "center",
  116. title: res.data.message,
  117. duration: 2000
  118. });
  119. resolve(res);
  120. }
  121. } else if (res.statusCode == 401) {
  122. loginTimeout();
  123. } else {
  124. uni.showToast({
  125. mask: true,
  126. icon: "none",
  127. position: "center",
  128. title: '连接异常,请联系管理员.',
  129. duration: 2000
  130. });
  131. resolve(res);
  132. }
  133. },
  134. fail: (err) => {
  135. // 失败
  136. uni.hideLoading()
  137. uni.showToast({
  138. mask: true,
  139. icon: "none",
  140. position: "center",
  141. title: '出错啦~请联系管理员!',
  142. duration: 2000
  143. });
  144. },
  145. complete: () => {
  146. // 完成
  147. }
  148. });
  149. })
  150. }
  151. export const apiResquestForm = (prams) => {
  152. return new Promise((resolve, reject) => {
  153. let url = config.base_url + prams.url;
  154. uni.showLoading({
  155. title: '加载中',
  156. mask: true
  157. });
  158. // get请求映射params参数
  159. if (prams.method === 'GET' && prams.data) {
  160. url = url + '?' + tansParams(prams.data);
  161. url = url.slice(0, -1);
  162. prams.data = {};
  163. }
  164. return uni.request({
  165. timeout:10000,
  166. url: url,
  167. data: {
  168. ...prams.data
  169. },
  170. method: prams.method,
  171. header: {
  172. 'content-type': 'application/x-www-form-urlencoded',
  173. 'Authorization': uni.getStorageSync('token')
  174. },
  175. success: (res) => {
  176. // 成功
  177. uni.hideLoading()
  178. if (res.statusCode == 200) {
  179. if (res.data.code == 200) {
  180. resolve(res);
  181. } else if (res.data.code == 401) {
  182. loginTimeout();
  183. } else {
  184. uni.showToast({
  185. mask: true,
  186. icon: "none",
  187. position: "center",
  188. title: res.data.message,
  189. duration: 2000
  190. });
  191. resolve(res);
  192. }
  193. } else if (res.statusCode == 401) {
  194. loginTimeout();
  195. } else {
  196. uni.showToast({
  197. mask: true,
  198. icon: "none",
  199. position: "center",
  200. title: '连接异常,请联系管理员.',
  201. duration: 2000
  202. });
  203. resolve(res);
  204. }
  205. },
  206. fail: (err) => {
  207. // 失败
  208. uni.hideLoading()
  209. uni.showToast({
  210. mask: true,
  211. icon: "none",
  212. position: "center",
  213. title: '出错啦~请联系管理员!',
  214. duration: 2000
  215. });
  216. },
  217. complete: () => {
  218. // 完成
  219. }
  220. });
  221. })
  222. }
  223. export const apiResquestJsonList = (prams) => {
  224. return new Promise((resolve, reject) => {
  225. let url = config.base_url + prams.url;
  226. uni.showLoading({
  227. title: '加载中',
  228. mask: true
  229. });
  230. // get请求映射params参数
  231. if (prams.method === 'GET' && prams.data) {
  232. url = url + '?' + tansParams(prams.data);
  233. url = url.slice(0, -1);
  234. prams.data = {};
  235. }
  236. return uni.request({
  237. timeout:10000,
  238. url: url,
  239. data: prams.data,
  240. method: prams.method,
  241. header: {
  242. 'content-type': 'application/json',
  243. 'Authorization': uni.getStorageSync('token')
  244. },
  245. success: (res) => {
  246. // 成功
  247. uni.hideLoading()
  248. if (res.statusCode == 200) {
  249. if (res.data.code == 200) {
  250. resolve(res);
  251. } else if (res.data.code == 401) {
  252. loginTimeout();
  253. } else {
  254. uni.showToast({
  255. mask: true,
  256. icon: "none",
  257. position: "center",
  258. title: res.data.message,
  259. duration: 2000
  260. });
  261. resolve(res);
  262. }
  263. } else if (res.statusCode == 401) {
  264. loginTimeout();
  265. } else {
  266. uni.showToast({
  267. mask: true,
  268. icon: "none",
  269. position: "center",
  270. title: '连接异常,请联系管理员.',
  271. duration: 2000
  272. });
  273. resolve(res);
  274. }
  275. },
  276. fail: (err) => {
  277. // 失败
  278. uni.hideLoading()
  279. uni.showToast({
  280. mask: true,
  281. icon: "none",
  282. position: "center",
  283. title: '出错啦~请联系管理员!',
  284. duration: 2000
  285. });
  286. },
  287. complete: () => {
  288. // 完成
  289. }
  290. });
  291. })
  292. }
  293. export const apiResquestFormVideo = (prams) => {
  294. return new Promise((resolve, reject) => {
  295. let url = uni.getStorageSync('cameraExtranetAgent') + prams.url;
  296. uni.showLoading({
  297. title: '加载中',
  298. mask: true
  299. });
  300. // get请求映射params参数
  301. if (prams.method === 'GET' && prams.data) {
  302. url = url + '?' + tansParams(prams.data);
  303. url = url.slice(0, -1);
  304. prams.data = {};
  305. }
  306. return uni.request({
  307. timeout:10000,
  308. url: url,
  309. data: {
  310. ...prams.data
  311. },
  312. method: prams.method,
  313. header: {
  314. 'content-type': 'application/x-www-form-urlencoded',
  315. 'Authorization': uni.getStorageSync('token')
  316. },
  317. success: (res) => {
  318. // 成功
  319. uni.hideLoading()
  320. if (res.statusCode == 200) {
  321. if (res.data.code == 200) {
  322. resolve(res);
  323. } else if (res.data.code == 401) {
  324. loginTimeout();
  325. } else {
  326. uni.showToast({
  327. mask: true,
  328. icon: "none",
  329. position: "center",
  330. title: res.data.message,
  331. duration: 2000
  332. });
  333. resolve(res);
  334. }
  335. } else if (res.statusCode == 401) {
  336. loginTimeout();
  337. } else {
  338. uni.showToast({
  339. mask: true,
  340. icon: "none",
  341. position: "center",
  342. title: '连接异常,请联系管理员.',
  343. duration: 2000
  344. });
  345. resolve(res);
  346. }
  347. },
  348. fail: (err) => {
  349. // 失败
  350. uni.hideLoading()
  351. uni.showToast({
  352. mask: true,
  353. icon: "none",
  354. position: "center",
  355. title: '出错啦~请联系管理员!',
  356. duration: 2000
  357. });
  358. },
  359. complete: () => {
  360. // 完成
  361. }
  362. });
  363. })
  364. }
  365. export const apiResquestTimer = (prams) => {
  366. return new Promise((resolve, reject) => {
  367. let url = config.base_url + prams.url;
  368. // get请求映射params参数
  369. if (prams.method === 'GET' && prams.data) {
  370. url = url + '?' + tansParams(prams.data);
  371. url = url.slice(0, -1);
  372. prams.data = {};
  373. }
  374. return uni.request({
  375. timeout:10000,
  376. url: url,
  377. data: {
  378. ...prams.data
  379. },
  380. method: prams.method,
  381. header: {
  382. 'content-type': 'application/json;charset=utf-8',
  383. 'Authorization': uni.getStorageSync('token')
  384. },
  385. success: (res) => {
  386. // 成功
  387. uni.hideLoading()
  388. if (res.statusCode == 200) {
  389. if (res.data.code == 200) {
  390. resolve(res);
  391. } else if (res.data.code == 401) {
  392. loginTimeout();
  393. } else {
  394. uni.showToast({
  395. mask: true,
  396. icon: "none",
  397. position: "center",
  398. title: res.data.message,
  399. duration: 2000
  400. });
  401. resolve(res);
  402. }
  403. } else if (res.statusCode == 401) {
  404. loginTimeout();
  405. } else {
  406. uni.showToast({
  407. mask: true,
  408. icon: "none",
  409. position: "center",
  410. title: '连接异常,请联系管理员.',
  411. duration: 2000
  412. });
  413. resolve(res);
  414. }
  415. },
  416. fail: (err) => {
  417. // 失败
  418. uni.hideLoading()
  419. uni.showToast({
  420. mask: true,
  421. icon: "none",
  422. position: "center",
  423. title: '出错啦~请联系管理员!',
  424. duration: 2000
  425. });
  426. },
  427. complete: () => {
  428. // 完成
  429. }
  430. });
  431. })
  432. }
  433. //登录超时-退出至登录页面
  434. export function loginTimeout(params) {
  435. uni.showToast({
  436. mask: true,
  437. icon: "none",
  438. position: "center",
  439. title: "登录超时,请重新登录~",
  440. duration: 2000
  441. });
  442. uni.removeStorageSync('token');
  443. uni.removeStorageSync('userId');
  444. uni.removeStorageSync('userType');
  445. setTimeout(function() {
  446. // uni.redirectTo({
  447. // url: '/pages/views/login/login',
  448. // });
  449. uni.redirectTo({
  450. url: '/pages/views/login/ssoLogin',
  451. });
  452. }, 2000);
  453. }