前端hook项目pc总结笔记-ts封装axios方法
import axios, { AxiosRequestConfig, AxiosError } from "axios" import { getToken, removeToken } from '../utils/auth'; import { message } from "antd"; const axiosBaseQuery = ( { baseUrl }: { baseUrl: string } = { baseUrl: '' }, ): BaseQueryFn< { url: string, method: AxiosRequestConfig['method'], data?: AxiosRequestConfig['data'], params?: AxiosRequestConfig['params'], responseType?: AxiosRequestConfig['params'], }, unknown, unknown > => async ({ url, method, data, params, responseType }) => { try { let headers = { Prefer: 'return=representation', Authorization: getToken() || "" }; //配置header,包括JWT的token const result = await axios({ url: baseUrl + url, method, data, params, headers, responseType }); return { data: result.data } //在这里控制是否返回response的全部数据 } catch (axiosError) { let err = axiosError as AxiosError return { error: { status: err.response?.status, data: err.response?.data || err.message, }, } } }
ts写法对axios的封装
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!