VUE- 访问服务器端数据 axios
VUE- 访问服务器端数据 axios
一,安装
npm install axios
二,在http.js中引入
import axios from 'axios';
三,定义http request 拦截器,添加数据请求公用信息
axios.interceptors.request.use( config => { // const token = getCookie('名称');注意使用的时候需要引入cookie方法,推荐js-cookie //config.data = JSON.stringify(config.data); let token = localStorage.token; //let token = 'xxx'; let appid = 'xxx'; let appID = decodeURIComponent(appid); config.headers.token = token; //config.headers['Content-Type'] = 'application/x-www-form-urlencoded'; if (config.method == 'get') { config.params.app_id = appID config.params.token = token } if (config.method == 'post') { config.data.token = token config.data.app_id = appID } return config; }, error => { return Promise.reject(err); } );
四,封装get方法
export function get(url, params = {}) { return new Promise((resolve, reject) => { axios.get(url, { params: params }) .then(response => { resolve(response.data); }) .catch(err => { reject(err) }) }) }
五,封装post方法
export function post(url, params = {}) { return new Promise((resolve, reject) => { axios.post(url, params) .then(response => { resolve(response.data); }, err => { reject(err) }) }) }
六,封装patch请求
export function patch(url, data = {}) { return new Promise((resolve, reject) => { axios.patch(url, data) .then(response => { resolve(response.data); }, err => { reject(err) }) }) }
七,封装put请求
export function put(url, data = {}) { return new Promise((resolve, reject) => { axios.put(url, data) .then(response => { resolve(response.data); }, err => { reject(err) }) }) }
八,实现跨域
const downloadUrl = url => { let iframe = document.createElement('iframe') iframe.style.display = 'none' iframe.src = url iframe.onload = function() { document.body.removeChild(iframe) } document.body.appendChild(iframe) }
九,方法的使用
在main.js里引入http.js
import Vue from 'vue' import App from './App' import router from './router' import axios from 'axios' import {get, post } from '@/utils/http' Vue.prototype.$ajax = axios; Vue.prototype.$post = post; Vue.prototype.$get = get;
在需要调用的地方,参考:https://www.cnblogs.com/1285026182YUAN/p/11393522.html
this.$get(url).then((response) => { } })
this.$post(url, data).then((response) => { } })
this.$put(url, data).then((response) => { } })
this.$patch(url, data).then((response) => { } })
引用:https://www.cnblogs.com/zhangbs/p/9681032.html
分类:
前端方向 / 前端技术-VUE
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
2019-02-28 GIT-常规操作
2019-02-28 GIT-Bonobo.Git.Server的使用