nuxt3中请求封装与开发代理配置步骤

news/2025/3/7 0:19:27/
htmledit_views">

一、plugin文件夹中新建axios.js文件

import axios from 'axios';export default defineNuxtPlugin(nuxtApp => {const axiosInstance = axios.create({baseURL: '', // 设置你的API基础URLtimeout: 10000, // 设置请求超时时间});// 可以添加请求拦截器等axiosInstance.interceptors.request.use(config => {// 在发送请求之前做些什么,比如设置token等config.headers.common['Authorization'] = `Bearer ${localStorage.getItem('token')}`;return config;}, error => {// 对请求错误做些什么return Promise.reject(error);});// 可以添加响应拦截器等axiosInstance.interceptors.response.use(response => {// 对响应数据做点什么return response;}, error => {// 对响应错误做点什么return Promise.reject(error);});// 将axios实例暴露给nuxt应用,以便在组件中使用nuxtApp.provide('axios', axiosInstance);
});

二、nuxt.config.ts文件中配置插件

plugins: ['~/plugins/axios.js'],

三、nuxt.config.ts文件中配置代理

nitro: {devProxy: {"/api": {target: "....", // 这里是被转发地址changeOrigin: true,prependPath: false, //路径是否重写},},}

四、组件中使用

import { useNuxtApp } from '#app';
import { onMounted } from 'vue';
const nuxtApp = useNuxtApp();onMounted(async() => {const res = await nuxtApp.$axios.post('/api/接口地址',{//参数});
})


http://www.ppmy.cn/news/1577214.html

相关文章

Python-04BeautifulSoup网络爬虫

2025-03-04-BeautifulSoup网络爬虫 记录BeautifulSoup网络爬虫的核心知识点 文章目录 2025-03-04-BeautifulSoup网络爬虫 [toc]1-参考网址2-学习要点3-核心知识点1. 安装2. 导入必要的库3. 发送 HTTP 请求4. 创建 BeautifulSoup 对象5. 解析 HTML 内容5.1 查找标签5.2 根据属性…

【EB-07】TC397 Tresos 导入通信ARXML

TC397 Tresos 导入通信ARXML 1. 导入通信ARXML1.1 创建导入规则1.2 创建导入wizard2 优化ARXML2.1 查看优化效果1. 导入通信ARXML 1.1 创建导入规则 1.2 创建导入wizard EB Tresos不像其他工具会自动加入模块,需要我们手动去加入对应的模块

Elasticsearch 限制索引大小与索引模板匹配冲突解决方案

文章目录 背景介绍环境限制索引大小创建 ILM(索引生命周期管理)策略创建 ILM 策略 创建索引模板并关联 ILM 策略使用索引模板应用 ILM 策略 解决索引模板匹配冲突✅ 解决方案🔹 方案 1:修改 index_patterns(推荐&#…

JS篇-关于javascript、ts互斥锁的作用和写法

一、一般情况下的单线程 JavaScript 在webworks和 Node.js 环境下,主线程通常是单线程执行的,这意味着同一时间只会执行一个任务,所以大部分情况下不需要传统意义上的互斥锁。 let counter 0;function increment() {counter;console.log(c…

AJAX 文件上传进度条 JAVA

JSP文件 <% page language"java" contentType"text/html; charsetUTF-8" pageEncoding"UTF-8"%> <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>AJAX 文件上传进度条</title>…

OpenMCU(一):STM32F407 FreeRTOS移植

概述 本文主要描述了STM32F407移植FreeRTOS的简要步骤。移植描述过程中&#xff0c;忽略了Keil软件的部分使用技巧。默认读者熟练使用Keil软件。本文的描述是基于OpenMCU_FreeRTOS这个工程&#xff0c;该工程已经下载放好了移植stm32f407 FreeRTOS的所有文件 OpenMCU_FreeRTOS工…

vue3中Element-plus table 反选 禁用实战

在 Vue 3 中使用 Element Plus 的 el-table 组件实现反选和禁用某些行的功能&#xff0c;可以通过以下步骤实现&#xff1a; 1. 安装 Element Plus 首先&#xff0c;确保你已经安装了 Element Plus&#xff1a; npm install element-plus2. 引入 Element Plus 组件 在你的 …

MySQL创建外键失败

问题描述 我有两张表&#xff0c;它们的结构分别是&#xff1a; contens表&#xff1a; content_version表&#xff1a; 其中&#xff0c;content_version表字段content_id想要创建content表的外键 但是&#xff1a; 明明两个字段的类型、长度、是否为空都设置的一模一样&am…