小程序封装axios请求

封装axios

import { getStorageSync, clearStorage } from 'remax/wechat';
import axios from 'axios/dist/axios.min';
import mpAdapter from "axios-miniprogram-adapter";//使用模块
import { showToast } from 'remax/wechat';

const baseURL = process.env.NODE_ENV === 'development' ? 'https://test.*****.cn/api' : 'https://tt.****.cn/api';
const service = axios.create({
  adapter: mpAdapter,
  baseURL
});

// 封装令牌超时
/***
 *
 * @param error
 * @returns
 * code: "token_not_valid"
 *  detail: "Given token not valid for any token type"
 */

const err = (error) => {
  if (error.response) {
    if (error.response.status === 401) {
      showToast({ title: '登录已失效,请重新登录', icon: 'none' }).catch();
      clearStorage().catch();
    }
  }
  return Promise.reject(error);
};

service.interceptors.request.use(
  config => {
    try {
      let token = getStorageSync('token');
      if (token) {
        config.headers.Authorization = `Bearer ${token}`;
      }
    } catch (e) {
      // Do something when catch error
    }
    return config;
  },
  error => {
    return Promise.reject(error);
  }
);

// http response 拦截器
service.interceptors.response.use(
  (response) => {
    return response;
  }, err);
export default service;

封装接口中使用

import http from '../utils/http';
export function code (data) {
  return http({
    url: '/code',
    data
  });
}

使用

import { code } from "../../../api/user";

//使用
code(value).then((res) => {
   if (res.status === 200) {
 }).catch();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值