123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- //用BASEURL来表示域名地址
- // const BASE_URL = 'http://192.168.110.153:9002'
- // const BASE_URL = 'https://zswl.api.jpy.wang/zswl-cloud-bdb'
- // const BASE_URL = 'https://api.dev.zonelife.cn'
- import { BASE_URL } from "@/utils/config.js";
- let errorCount = 0;
- const MAX_ERROR_COUNT = 2;
- //封装请求方法
- export const request = (options) => {
- return new Promise((resolve, reject) => {
- //请求路径拼接,,其中options.url就是通过下面方法myRequest获取到接口部分的url
- //method--请求方法,不是method的post就是get
- //请求的参数,当没有参数的时候就是空对象
- // BASE_URL = BASE_UR.includes('dev') ?
- let BASE_URL2 = BASE_URL;
- // if(options.url.includes('/zswl-cloud-shop')){
- // BASE_URL2 = 'http://g3710170f8.zicp.fun'
- // options.url = options.url.replace("/zswl-cloud-shop","")
- // }
- uni.request({
- url: BASE_URL2 + options.url,
- method: options.method || "GET",
- data: options.data || {},
- header: {
- accessToken: uni.getStorageSync("token"),
- },
- success: (res) => {
- if (res.statusCode !== 200) {
- return uni.showToast({
- title: "获取失败",
- });
- // uni.hideLoading()
- } else if (res.data.msg != "成功") {
- //接口返回报错
- uni.showToast({
- title:
- res.data.content ||
- res.data.msg ||
- res.data.exception.message ||
- "请求失败",
- icon: "error",
- });
- console.log("报错:", res);
- // token过期或出了问题
- if (
- res.data.exception &&
- res.data.exception.type ==
- "AuthenticationCredentialsNotFoundException"
- ) {
- uni.showLoading({
- title: "刷新登录中",
- });
- if (errorCount <= MAX_ERROR_COUNT) {
- console.log("errorCount", errorCount);
- errorCount++;
- if (!uni.getStorageSync("refreshToken")) {
- uni.clearStorageSync();
- uni.reLaunch({
- url: "/pages/index/index",
- });
- }
- // 刷新token
- uni.request({
- url: BASE_URL + "/zswl-cloud-bdb/user/refreshToken",
- method: "GET",
- data: {
- refreshToken: uni.getStorageSync("refreshToken"),
- },
- success(r) {
- uni.hideLoading();
- if (r.data.content == "刷新令牌错误") {
- uni.showToast({
- title: "登录失效",
- icon: "fail",
- });
- uni.clearStorageSync();
- uni.reLaunch({
- url: "/pages/index/index",
- });
- } else {
- uni.setStorageSync("token", r.data.content); //登录状态
- // 刷新页面
- let list = ["/pay/pay"];
- var pages = getCurrentPages();
- var url = "/" + pages[pages.length - 1].route;
- if (list.indexOf(url) == -1) {
- uni.reLaunch({
- url,
- });
- }
- }
- },
- });
- }
- }
- }
- resolve(res.data);
- },
- //请求失败
- fail: (err) => {
- uni.showToast({
- title: "请求接口失败",
- });
- reject(err);
- },
- });
- });
- };
|