request.js 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376
  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 apiResquestForm = (prams) => {
  79. return new Promise((resolve, reject) => {
  80. let url = config.base_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/x-www-form-urlencoded',
  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 apiResquestJsonList = (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: prams.data,
  165. method: prams.method,
  166. header: {
  167. 'content-type': 'application/json',
  168. 'Authorization': uni.getStorageSync('token')
  169. },
  170. success: (res) => {
  171. // 成功
  172. uni.hideLoading()
  173. if (res.statusCode == 200) {
  174. if (res.data.code == 200) {
  175. resolve(res);
  176. } else if (res.data.code == 401) {
  177. loginTimeout();
  178. } else {
  179. uni.showToast({
  180. mask: true,
  181. icon: "none",
  182. position: "center",
  183. title: res.data.message,
  184. duration: 2000
  185. });
  186. resolve(res);
  187. }
  188. } else if (res.statusCode == 401) {
  189. loginTimeout();
  190. } else {
  191. uni.showToast({
  192. mask: true,
  193. icon: "none",
  194. position: "center",
  195. title: '连接异常,请联系管理员.',
  196. duration: 2000
  197. });
  198. resolve(res);
  199. }
  200. },
  201. fail: (err) => {
  202. // 失败
  203. uni.hideLoading()
  204. uni.showToast({
  205. mask: true,
  206. icon: "none",
  207. position: "center",
  208. title: '出错啦~请联系管理员!',
  209. duration: 2000
  210. });
  211. },
  212. complete: () => {
  213. // 完成
  214. }
  215. });
  216. })
  217. }
  218. export const apiResquestFormVideo = (prams) => {
  219. return new Promise((resolve, reject) => {
  220. let url = uni.getStorageSync('cameraExtranetAgent') + prams.url;
  221. uni.showLoading({
  222. title: '加载中',
  223. mask: true
  224. });
  225. // get请求映射params参数
  226. if (prams.method === 'GET' && prams.data) {
  227. url = url + '?' + tansParams(prams.data);
  228. url = url.slice(0, -1);
  229. prams.data = {};
  230. }
  231. return uni.request({
  232. url: url,
  233. data: {
  234. ...prams.data
  235. },
  236. method: prams.method,
  237. header: {
  238. 'content-type': 'application/x-www-form-urlencoded',
  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 apiResquestTimer = (prams) => {
  290. return new Promise((resolve, reject) => {
  291. let url = config.base_url + prams.url;
  292. // get请求映射params参数
  293. if (prams.method === 'GET' && prams.data) {
  294. url = url + '?' + tansParams(prams.data);
  295. url = url.slice(0, -1);
  296. prams.data = {};
  297. }
  298. return uni.request({
  299. url: url,
  300. data: {
  301. ...prams.data
  302. },
  303. method: prams.method,
  304. header: {
  305. 'content-type': 'application/json;charset=utf-8',
  306. 'Authorization': uni.getStorageSync('token')
  307. },
  308. success: (res) => {
  309. // 成功
  310. uni.hideLoading()
  311. if (res.statusCode == 200) {
  312. if (res.data.code == 200) {
  313. resolve(res);
  314. } else if (res.data.code == 401) {
  315. loginTimeout();
  316. } else {
  317. uni.showToast({
  318. mask: true,
  319. icon: "none",
  320. position: "center",
  321. title: res.data.message,
  322. duration: 2000
  323. });
  324. resolve(res);
  325. }
  326. } else if (res.statusCode == 401) {
  327. loginTimeout();
  328. } else {
  329. uni.showToast({
  330. mask: true,
  331. icon: "none",
  332. position: "center",
  333. title: '连接异常,请联系管理员.',
  334. duration: 2000
  335. });
  336. resolve(res);
  337. }
  338. },
  339. fail: (err) => {
  340. // 失败
  341. uni.hideLoading()
  342. uni.showToast({
  343. mask: true,
  344. icon: "none",
  345. position: "center",
  346. title: '出错啦~请联系管理员!',
  347. duration: 2000
  348. });
  349. },
  350. complete: () => {
  351. // 完成
  352. }
  353. });
  354. })
  355. }
  356. //登录超时-退出至登录页面
  357. export function loginTimeout(params) {
  358. uni.showToast({
  359. mask: true,
  360. icon: "none",
  361. position: "center",
  362. title: "登录超时,请重新登录~",
  363. duration: 2000
  364. });
  365. uni.removeStorageSync('token');
  366. uni.removeStorageSync('userId');
  367. uni.removeStorageSync('userType');
  368. setTimeout(function() {
  369. uni.redirectTo({
  370. url: '/pages/login/login',
  371. });
  372. }, 2000);
  373. }