zoukankan      html  css  js  c++  java
  • axios中get请求与post请求的简单函数封装

    今天写点什么呢,就写写如何将axios的post请求和get请求封装在一个函数中。

    首先讲讲axios的get请求。

    axios.get('/user')
    	.then( (response) => {
    		console.log(response);
    	})
    	.catch( (error) => {
    		console.log(error);
    	});
    
    get请求如何传参想必大家应该都知道的
    一是可以拼接在url上
    axios.get('/user?ID=12345')
    .then( (response) => {
    	console.log(response);
    })
    .catch( (error) => {
    	console.log(error);
    });
    
    二是axios可以以键值对的形式放入params对象中
    axios.get('/user', {
    	params: {
      		ID: 12345
    	}
    })
    .then( (response) => {
    	console.log(response);
    })
    .catch( (error) => {
    	console.log(error);
    });
    

    axios的post请求

    axios的post请求参数可以直接在请求地址后加在一个对象中
    axios.post('/user', {
    	firstName: 'Fred',
    	lastName: 'Flintstone'
    })
    .then( (response) => {
    	console.log(response);
    })
    .catch( (error) => {
    	console.log(error);
    });
    

    今天讲的如何将axios的post请求与get请求封装在一起利用的是axios(config)

    1、get请求
    axios({
    	methods: 'get',
    	url: '/user',
    	params: {
    		ID: '1234'
    	}
    })
    .then( (response) => {
    	console.log(response);
    })
    .catch( (error) => {
    	console.log(error);
    });
    
    2、post请求
    axios({
    	methods: 'post',
    	url: '/user',
    	data: {
    		ID: '1234'
    	}
    })
    .then( (response) => {
    	console.log(response);
    })
    .catch( (error) => {
    	console.log(error);
    });
    

    根据上面的对比大家应该可以清楚看出get请求与post请求的差异在哪了,那么我们只要将差异点摘出来就OK了

    import axios from 'axios';
    
    export default function(url, method, params = {}) {
    	// 首先判断是get请求还是post请求
    	let data = method.toLocaleLowerCase() === 'get' ? 'params' : 'data';
    	return axios({
        	method,
        	url,
        	[data]: params // 差异点在于data的值
    	}).then((res) => {
        	return Promise.resolve(res.data);
    	}).catch((err) => {
        	return Promise.reject(err);
    	})
    }
    

    利用上面的函数我们就可以轻松利用这个函数进行axios请求了,今天就讲这么多,希望对大家有所帮助。

  • 相关阅读:
    java反射并不是什么高深技术,面向对象语言都有这个功能,而且功能也很简单,就是利用jvm动态加载时生成的class对象
    java反射意义
    vs2013中国集
    用户向导页面实现左右滑动的ImageSwitcher
    Java / Android H基于ttp多线程下载的实现
    成语接龙(dfs)
    python 弄github代码库列表
    leetcode先刷_Unique Paths II
    jquery于form正在使用submit问题,未解决
    Vs2012于Linux应用程序开发(2):图案
  • 原文地址:https://www.cnblogs.com/kyl-6/p/9502779.html
Copyright © 2011-2022 走看看