axios封装接口思路

    科技2024-05-27  79

    axios封装接口思路

    1.安装axios并引入

    cnpm i axios --save

    2.创建一个http.js文件 引入axios 封装get和post方法 以及开发及上线运用到的接口 还有一些请求超时

    import axios from "axios" // 判断接口 如果是开发环境 接口就用http://120.53.31.103:84/开头 if (process.env.NODE_ENV == "development") { axios.defaults.baseURL = "http://120.53.31.103:84/" } // 如果是生产环境 接口就用https://wap.365msmk.com/开口 if (process.env.NODE_ENV == "production") { aixos.defaults.baseURL = "https://wap.365msmk.com/" } //设置超出时间 axios.defaults.timeout = 3000 // 请求拦截 axios.interceptors.request.use( config => { config.headers = { DeviceType: 'H5' } return config } ) // 封装get方法 并抛出 export function get(url, params) { return new Promise((resolve, reject) => { axios.get(url, { params: params }).then(res => { resolve(res) }).catch(err => { reject(err) }) }) } // 封装post方法 并抛出 export function post(url, params) { return new Promise((resolve, reject) => { axios.post(url,params).then(res => { resolve(res.data) }).catch(err => { reject(err.data) }) }) }

    在创建一个api.js文件 主要就是写一些封装接口

    // 引入get 和post方法 import {get,post} from '../Http/Http'; export function getAppIndex(){ return get('api/app/recommend/appIndex') } export function banner(){ return get('api/app/banner') } export function jiangshi(id){ return get('api/app/courseInfo/basis_id='+id) } export function laoshi(id){ return get('api/app/teacher/198') }

    然后再对应文件里去获取接口

    <script> //引入接口模块 import { getAppIndex } from "../../../api/Api"; export default { data() { return { list: [], }; }, //不一定用async函数 这只是其中的一种方法 async mounted() { var list = await getAppIndex(); this.list = list.data.data[0].list }, }

    这样差不多就完成了

    Processed: 0.011, SQL: 8