axios的基本使用和vue腳手架自帶的跨域問題解決

axios的基本使用和vue腳手架自帶的跨域問題解決

1. axios

1.1 導入axios

npm i axios

1.2 創建serve1.js

serve1.js

const express = require('express')
const app = express()app.use((request,response,next)=>{console.log('有人請求服務器1了');console.log('請求來自于',request.get('Host'));console.log('請求的地址',request.url);next()
})app.get('/students',(request,response)=>{const students = [{id:'001',name:'tom',age:18},{id:'002',name:'jerry',age:19},{id:'003',name:'tony',age:120},]response.send(students)
})
//監聽5000端口
app.listen(5000,(err)=>{if(!err) console.log('服務器1啟動成功了,請求學生信息地址為:http://localhost:5000/students');
})

App.vue

<script>
import axios from 'axios'
export default {name: 'App',components: {},mounted() {//發送請求,注意,請求的端口是8080,而我們服務器監聽的是5000端口axios.get('http://localhost:8080/students').then( response => {console.log(response.data)}).catch( error => {console.log(error.message)})}
}
</script>

1.3 執行node命令,打開服務監聽

node serve1

1.4 啟動vue項目

npm run serve

結果:

在這里插入圖片描述

2. vue腳手架自帶的跨域問題解決

關于跨域問題的具體說明和其他解決方案見:什么是跨域?跨域解決方法-CSDN博客

想通過vue腳手架自帶的跨域解決,需要在 vue.config.js 中配置 devServer

2.1 基本配置

const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({devServer: {//配置serve1.js對應監聽的端口proxy: 'http://localhost:5000'}
})

此時,需要重新運行vue項目

npm run serve

就能在控制臺上看到請求的結果了,結果:
在這里插入圖片描述
2.2 詳細配置

詳細配置可以精準控制自己本次請求需不需要代理轉發

vue.config.js

//方式二:可以精準控制,看看自己本次請求需不需要代理devServer: {proxy: {//要代理需要加 api 前綴(http://localhost:XXX/api/xxxx),配合pathRewrite屬性使用'/api': {	target: 'http://localhost:5000',pathRewrite: {'^/api':''}, //匹配端口號后面以/api開頭的信息,將其變為空changeOrigin: true, //控制請求頭中的host,服務器收到的是改變后的host信息}}}

App.vue

<script>
import axios from 'axios'
export default {name: 'App',components: {},mounted() {//發送請求,注意,請求的端口是8080,而我們服務器監聽的是5000端口//注意,請求的url是 http://localhost:8080/api/students//配合vue.config.js中配置的pathReWrite可以將/api去掉//如果我們加了/api就是需要代理轉發,沒加則不需要axios.get('http://localhost:8080/api/students').then( response => {console.log(response.data)}).catch( error => {console.log(error.message)})}
}
</script>

結果:
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/37130.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/37130.shtml
英文地址,請注明出處:http://en.pswp.cn/web/37130.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

go Channel 原理 (一)

Channel 設計原理 不要通過共享內存的方式進行通信&#xff0c;而是應該通過通信的方式共享內存。 在主流編程語言中&#xff0c;多個線程傳遞數據的方式一般都是共享內存。 Go 可以使用共享內存加互斥鎖進行通信&#xff0c;同時也提供了一種不同的并發模型&#xff0c;即通…

npm ci vs npm i

npm ci vs npm i 幾個關鍵區別&#xff1a;該選擇哪個&#xff1f; 通過 npm ci 和 npm i 兩個命令&#xff0c;都可安裝項目的依賴。那么這兩個命令有什么區別呢&#xff1f; 幾個關鍵區別&#xff1a; 目的和用途&#xff1a; npm ci &#xff1a;根據項目中的 package-lock…

AI奏響未來樂章:音樂界的革命性變革

AI在創造還是毀掉音樂 引言 隨著科技的飛速發展&#xff0c;人工智能&#xff08;AI&#xff09;正在逐漸滲透到我們生活的每一個角落&#xff0c;音樂領域也不例外。AI技術的引入&#xff0c;不僅為音樂創作、教育、體驗帶來了革命性的變革&#xff0c;更為整個音樂產業注入了…

順序表應用——通訊錄

在本篇之前的順序表專題我們已經學習的順序表的實現&#xff0c;了解了如何實現順序表的插入和刪除等功能&#xff0c;那么在本篇當中就要學習基于順序表來實現通訊錄&#xff0c;在通訊錄當中能實現聯系人的增、刪、查改等功能&#xff0c;接下來就讓我們一起來實現通訊錄吧&a…

grpc學習golang版( 五、多proto文件示例 )

系列文章目錄 第一章 grpc基本概念與安裝 第二章 grpc入門示例 第三章 proto文件數據類型 第四章 多服務示例 第五章 多proto文件示例 第六章 服務器流式傳輸 第七章 客戶端流式傳輸 第八章 雙向流示例 文章目錄 一、前言二、定義proto文件2.1 公共proto文件2.2 語音喚醒proto文…

解決Vue3項目中跨域問題的步驟

決Vue3項目中跨域問題的步驟可以按照以下方式清晰地分點表示和歸納&#xff1a; 1. 使用代理服務器&#xff08;Proxy&#xff09; 步驟&#xff1a; 在Vue項目的根目錄下找到或創建vue.config.js文件。在vue.config.js中配置devServer的proxy選項。設定需要代理的接口前綴&a…

基于局域網下的服務器連接、文件傳輸以及內網穿透教程 | 服務器連接ssh | 服務器文件傳輸scp | 內網穿透frp | 研究生入學必備 | 深度學習必備

&#x1f64b;大家好&#xff01;我是毛毛張! &#x1f308;個人首頁&#xff1a; 神馬都會億點點的毛毛張 &#x1f4cc;本篇博客分享的是基于局域網下的服務器連接&#x1f517;、文件傳輸以及內網穿透教程&#xff0c;內容非常完備?&#xff0c;涵蓋了在服務器上做深度學…

樹莓派3B讀寫EEPROM芯片AT24C256

AT24C256是一個Atmel公司的EEPROM存儲芯片&#xff0c;容量是256K個bit&#xff08;也就是32K字節&#xff09;&#xff0c;I2C接口&#xff0c;而樹莓派正好有I2C接口&#xff0c;如下圖藍框中的4個IO口&#xff0c; 把AT24C256和這4個口接在一起&#xff0c;這樣硬件就準備好…

Django 頁面展示模型創建表的數據

1&#xff0c;添加視圖函數 Test/app8/urls.py from django.shortcuts import render from .models import Userdef create_user(request):if request.method POST:username request.POST.get(username)email request.POST.get(email)# ... 獲取其他字段的值# 創建用戶實例…

【Python學習篇】Python實驗小練習——異常處理(十三)

個人名片&#xff1a; &#x1f393;作者簡介&#xff1a;嵌入式領域優質創作者&#x1f310;個人主頁&#xff1a;妄北y &#x1f4de;個人QQ&#xff1a;2061314755 &#x1f48c;個人郵箱&#xff1a;[mailto:2061314755qq.com] &#x1f4f1;個人微信&#xff1a;Vir2025WB…

【教程】5分鐘直接了解隨機森林模型

本文來自《老餅講解-BP神經網絡》https://www.bbbdata.com/ 目錄 一、什么是隨機森林模型1.1.隨機森林模型介紹1.2.為什么隨機森林要用多棵決策樹 二、怎么訓練一個隨機森林模型2.1.訓練一個隨機森林模型 隨機森林模型是機器學習中常用的模型之一&#xff0c;它是決策樹模型的一…

Node.js全棧指南:靜態資源服務器

上一章【認識 MIME 和 HTTP】。 我們認識和了解了 MIME 的概念和作用&#xff0c;也簡單地學習了通過瀏覽器控制臺查看請求和返回的用法。 通過對不同的 HTML、CSS、JS 文件進行判斷&#xff0c;設置不同的 MIME 值&#xff0c;得以讓我們的瀏覽器正正確地接收和顯示不同的文…

八爪魚現金流-031,寬帶到期記一筆負債

到期了&#xff0c;新弄的網絡&#xff0c;記錄一下負債包。 八爪魚現金流 八爪魚

英英詞典(匯編實驗)

功能要求&#xff1a; 1.單詞及其英文解釋的錄入、修改和刪除 (1 ) 錄入新單詞&#xff0c;把它插入到相應的位置(按詞典順序)&#xff0c;其后跟英文解釋、同義詞、反義詞&#xff1b;&#xff08;此功能要求在文件中完成&#xff0c;其它功能可以將單詞放在數據段中&#xf…

數據庫原理之數據庫基本概念

目錄 前言 基本概念 數據庫完整性 前言 今天我們來看看數據庫的基本概念&#xff0c;幫助大家對數據庫有一點點最基本的了解 基本概念 4個基本概念 數據data&#xff1a;描述事物的符號&#xff0c;數據庫中存儲的基本對象。 數據庫Database&#xff1a;長期存儲在計算機…

山東大學多核并行2024年回憶版

2024.6.13回憶版 矩陣向量乘不可整除代碼 集合通信與點對點通信的區別 塊劃分、循環劃分、循環塊劃分&#xff08;14個向量&#xff0c;4個進程&#xff09; 按行訪問還是按列訪問快 SISD系統問題 循環依賴問題 問題&#xff1a;為什么不能對這個循環并行化&#xff0…

Python邏輯控制語句 之 綜合案例

需求&#xff1a; 1. 提示?戶輸?登錄系統的?戶名和密碼 2. 校驗?戶名和密碼是否正確(正確的?戶名:admin、密碼:123456) 3. 如果?戶名和密碼都正確&#xff0c;打印“登錄成功!”&#xff0c;并結束程序 4. 如果?戶名或密碼錯誤&#xff0c;打印“?戶名或密碼錯誤!”…

Django 對模型創建的兩表插入數據

1&#xff0c;添加模型 Test/app8/models.py from django.db import modelsclass User(models.Model):username models.CharField(max_length50, uniqueTrue)email models.EmailField(uniqueTrue)password models.CharField(max_length128) # 使用哈希存儲密碼first_name …

代碼隨想錄算法訓練營第一天 [300.最長遞增子序列 674. 最長連續遞增序列 718. 最長重復子數組]

代碼隨想錄算法訓練營第一天 [300.最長遞增子序列 674. 最長連續遞增序列 718. 最長重復子數組] **一、300.最長遞增子序列 ** 鏈接: 代碼隨想錄. 思路&#xff1a;dp[i] 以nums[i]為結尾的遞增子序列最大長度&#xff0c;下標為i的數&#xff0c;需要和下標為0開始一直到下標為…