request.js 9.3 KB

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