vue学习-14-axios

网络请求响应axios

axios.request(config)
axios.get(url[, config])
axios.delete(url[, config])
axios.head(url[, config])
axios.post(url[, data[, config]])
axios.put(url[, data[, config]])
axios.patch(url[, data[, config]])

全局axios和axios实例

全局使用
import axios from 'axios'	
//使用全局axios
	axios({
		baseURL: '/kcsj_ssm',//公共地址串
		url: '/user/allParkDepot',
		//url: '/kcsj_ssm/user/allParkDepot',
		timeout: 5000,//超时时间
		//get传递参数:url拼接或者,params
		params: {
			id: 1,
			name: '张三'
		},
		/* data:{
			id: 1,
			name: '张三'
		} */
	}).then(res => {
		console.log(res)
	}).catch(error => {
		console.log(error)
	})

全局默认配置:axios.defaults

	import axios from 'axios'
	//axios全局配置
	axios.defaults.baseURL = '/kcsj_ssm'
	axios.defaults.timeout = 6000
	export default {
		name: 'axios_set',
		methods: {
			click1() {
				axios({
					url: '/user/allParkDepot'
				}).then(res => {
					console.log(res)
				})
			}
		}
	}

使用全局axios,所有发送的请求的配置都是相同的。如果在功能上不同的模块功能请求不同的服务器,使用全局axios需要在每次具体的请求中配置具体的信息。

使用axios实例
const ins = axios.create({
		baseURL: '/kcsj_ssm',
		timeout: 5000,
		//headers:{'Content-Type':'application/json'}
	})
	ins.post('/user/allParkDepot')

使用post传递参数:

1、使用Qs
import Qs from 'qs
ins.post('/user/allParkDepot',Qs.stringify(data))
2、URLSearchParams
var data =new URLSearchParams()
data.append('userId',3)
ins.post('/user/allParkDepot',data)

方法使用

axios(config)
			axios({
					baseURL: '/kcsj_ssm',//公共地址串
					url: '/user/allParkDepot',
					timeout: 5000,//超时时间
					params: {
						id: 1,
						name: '张三'
					},
					//post等传递参数
					/* data:{
						id: 1,
						name: '张三'
					} */
				}).then(res => {
					console.log(res)
				}).catch(error => {
					console.log(error)
				})
axios.get(url[, config]) Content-Type:
ins.get(config.url,{
		params: {
			userId: 3
		},
		headers: {
			'Content-Type': 'multipart/form-data',
			//'Content-Type': 'application/x-www-form-urlencoded'
		}
	})
axios.post(url[, data[, config]])
 'Content-Type': 'application/x-www-form-urlencoded'
	var data= {'userId': '3'}
	ins.post(config.url,Qs.stringify(data))
	//ins.post(config.url,Qs.stringify(data),{
		//headers: {
			//'Content-Type': 'application/x-www-form-urlencoded'
		//} 
	//})
传递json数据 'Content-Type': 'application/json'
ins.post(config.url,JSON.stringify(data),{
		headers: {
			'Content-Type': 'application/json'
		}
Content-Type: multipart/form-data
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
npm i axios vue-axios 是一个命令,用于安装 axiosvue-axios 这两个包。这样做的目的是为了在你的 Vue 项目中使用 axios。 在你的 main.js 文件中,你需要导入 axiosvue-axios,并将它们与 Vue 实例绑定。可以使用以下代码实现这一点: import { createApp } from 'vue' import App from './App.vue' import router from './router' import axios from 'axios' import VueAxios from 'vue-axios' const app = createApp(App) app.use(VueAxios, axios).use(router) app.provide('axios', app.config.globalProperties.axios) app.mount('#app') 这样就可以在整个项目中使用全局的 axios 对象了。 在组件中,你可以通过注入(inject)的方式来使用全局的 axios。例如,在一个按钮的点击事件中,你可以使用以下代码来发送 GET 请求: <button @click="getList">getList</button> <script setup> import { onMounted } from "vue"; import { inject } from "vue"; const axios = inject("axios"); function getList() { axios.get("http://x.xxx.xx.xxx:3000/getHottestArticle").then((res) => { console.log(res); }); } </script> 这样,当点击按钮时,会调用 getList 函数,并使用全局的 axios 对象发送 GET 请求。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Vue3 中使用 “vue-axios](https://blog.csdn.net/qq_52697994/article/details/120210534)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值