位置: IT常识 - 正文

vue3+vite项目跨域配置(踩坑无数篇)(vue3.0解决跨域)

编辑:rootadmin
vue3+vite项目跨域配置(踩坑无数篇)

推荐整理分享vue3+vite项目跨域配置(踩坑无数篇)(vue3.0解决跨域),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue项目跨域问题,vue跨域的几种方式,vue项目怎么解决跨域,vue3.0跨域,vue3跨域解决方案,vue项目怎么解决跨域,vue3跨域解决方案,vue3.0跨域,内容如对您有帮助,希望把文章链接给更多的朋友!

写这篇多少有点心情复杂,毕竟因为一个巨巨巨巨没意思的bug卡了两整天… 废话不多说啦,开篇入题叭,希望大家都能改好自己的bugggggg!!!

1.vite.config.js配置

注意:因为我是用vite创建的,不是vue-cli,当时搜了好多教程都教的是新建一个vue.config.js,发现根本没有生效,所以,如果使用vite创建的项目就在vite.config.js里面配置如下代码:

vue3+vite项目跨域配置(踩坑无数篇)(vue3.0解决跨域)

以我要访问的疫情数据api为例,原api地址:https://api.inews.qq.com/testaxios/newsqa/v1/automation/modules/list?modules=FAutoCountryConfirmAdd,WomWorld,WomAboard

import { defineConfig } from 'vite';import vue from '@vitejs/plugin-vue';export default defineConfig({ plugins: [vue()], server: { port: 3000, proxy: { '/testaxios': { target: 'https://api.inews.qq.com/', // target就是你要访问的目标地址,可以是基础地址,这样方便在这个网站的其他api口调用数据 ws: true, changeOrigin: true, rewrite: (path) => path.replace(/^\/testaxios/, ''), // 要记得加rewrite这句 }, }, },})2.api文件

我写代码的时候,把api相关的调用函数封装在了一个文件里面,在api/index.js文件里,然后其他地方在用的时候就可以直接调用函数了。

除此之外,axios的请求也被我封装起来了,copy的网上的封装代码,也可以直接引入axios,需要的话拿走就好了。

api / index.jsimport axios from "../utils/requst"// import axios from "axios"const api = { // 疫情数据 getNcov(){ return axios.get("testaxios/newsqa/v1/automation/modules/list?modules=FAutoCountryConfirmAdd,WomWorld,WomAboard") }, // 城市数据 getNcovCity(){ return axios.get("testaxios/newsqa/v1/query/inner/publish/modules/list?modules=statisGradeCityDetail,diseaseh5Shelf") }, getNcovCity2(){ return axios.get("newsqa/v1/query/inner/publish/modules/list?modules=chinaDayList,chinaDayAddList,nowConfirmStatis,provinceCompare") }}export default api;

注意:这里前面只要加上你上面配置的前缀testaxios(前面不用 / 了),后面跟着原地址的后半部分就欧克了!

utils / requst.jsimport axios from "axios"import qs from "querystring"/** * 处理失败的方法 * status:状态码 * info:信息 */const errorHandle = (status,info) =>{ switch(status){ case 400: console.log("语义有误,当前请求无法被服务器理解。除非进行修改,否则客户端不应该重复提交这个请求。") break; case 401: // token:令牌 console.log("服务器认证失败") break; case 403: console.log("服务器已经理解请求,但是拒绝执行它"); break; case 404: console.log("请检查网络请求地址") break; case 500: console.log("服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。一般来说,这个问题都会在服务器的程序码出错时出现。") break; case 502: console.log("作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。") break; default: console.log(info) break; }}/** * 创建axios实例对象 */const instance = axios.create({ // 公共配置 // baseURL:"http://iwenwiki.com", timeout:8000})/** * 处理拦截器 */ /** * 请求拦截 */instance.interceptors.request.use( config => { if(config.method === "post"){ config.data = qs.stringify(config.data) } return config }, error => Promise.reject(error))/** * 响应拦截 */instance.interceptors.response.use( // 完成了 response => response.status === 200 ? Promise.resolve(response) : Promise.reject(response), error => { const { response } = error; errorHandle(response.status,response.info); })export default instance3.调用api相关函数

我是在home.vue里面调用的,直接import api文件以后就可以直接调用函数了

mounted(){ api.getNcov().then(res=>{ console.log(res.data) }).catch((error)=>{console.log(error)}); }

没啦!!!!!!!!!! 冲啊啊啊啊啊啊啊!!!!!!!!!

本文链接地址:https://www.jiuchutong.com/zhishi/284025.html 转载请保留说明!

上一篇:Windows7旗舰版系统极品飞车17已停止工作的解决方(win7旗舰系统)

下一篇:最高像素的照片是什么(最高像素是什么)

  • 注册资本印花税减半征收政策
  • 企业所得税纳税人
  • 新个税税率法
  • 账面价值与计税基础之间没有差别只是计价的两种名称
  • 红字发票开错了已上传如何作废
  • 残保金计算包括五险一金吗
  • 融资租赁设备增值税怎样抵扣
  • 2019印花税减免
  • 同一控制企业合并的特征包括
  • 营改增的增值税
  • 个人因终止投资经营而取得的股权转让收入如何计算个人所得税?
  • 虚开发票应如何进行处罚
  • 核定征收企业怎么申报
  • 固定资产盘点账实不符
  • 破产清算收到的实收资本是破产资产吗
  • 免税货物开成含税率的怎么报税?
  • 公司卖出汽车怎样做账
  • 应收账款转销怎么记账
  • 个体户一般纳税人和小规模的区别
  • 汇总缴纳增值税如何申报
  • 专票丢了可以拿复印件在所得税前列支吗
  • 农民专业合作社属于什么企业类型
  • 费用未入账是什么意思
  • 支付设备维修费用计入什么科目
  • 交城建税的滞纳金是多少
  • 出纳日记账填写样本
  • PHP:session_get_cookie_params()的用法_Session函数
  • 新买的笔记本电脑需要装系统吗
  • 销售过程的主要内容
  • 手工帐应交税费明细账
  • 企业所得税汇算清缴账务处理
  • 实际缴纳消费税计算公式
  • 购进设备抵扣税额
  • 一岁宝宝喝红糖姜水
  • 房屋租赁费发票备注栏需要写什么?
  • uniapp跨域解决方案
  • java cookie
  • redis常见问题解决
  • golang和php
  • 城投公司政府购买棚改
  • 固定资产的特征有哪些
  • 季度所得税申报怎么弥补以前年度亏损
  • 税控盘抵扣怎么做账
  • 如何关闭mysqld
  • 基于法律行为的物权变动模式包括
  • 设备安装收入税率
  • 房东减免后二房东不减房租
  • 全年一次性奖金并入或单独哪个好
  • 会计学中的折旧是什么意思
  • mysql设置uuid
  • case语句怎么执行
  • 土地使用权被政府收回要交个税吗
  • 政府会计制度中累计盈余怎么计算
  • 计提贷款损失准备的意义
  • 坏账准备的核销的分录怎么做
  • 挂靠建筑公司企业所得税怎么交?
  • 银行贷款损失的计算公式
  • 工厂厨房厨具
  • 银行信用贷款发放邮件后多久到账
  • 员工垫付的费用怎样记账
  • 银行涉外收入申报单
  • 主营业务成本做多了怎么办
  • sql入门课程
  • 脱机文件怎么办
  • 判断自己的脸型
  • 桌面上的软件是什么
  • Win7旗舰版系统文件名称
  • windows7可以打开多个窗口
  • mac系统怎么创建用户
  • win10右下角功能列表不见了
  • win10重启更新的时候强制关机后会发生啥
  • vsftpd.log
  • 网页跳转的实现方法
  • python检索文件中的内容
  • node socket hang up
  • Python装饰器入门学习教程(九步学习)
  • 淘宝店铺过户后身份证是谁的
  • 一级稽查体制
  • 税务局的纳税服务有哪些
  • 四川省地方税务局关于城镇土地使用税困难减免
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设