濮阳杆衣贸易有限公司

主頁 > 知識庫 > react axios 跨域訪問一個或多個域名問題

react axios 跨域訪問一個或多個域名問題

熱門標簽:廣西智能外呼系統(tǒng)多少錢 大學校門地圖標注 地圖標注與公司業(yè)務(wù)關(guān)系 外呼系統(tǒng)api對接 荊州智能電銷機器人 提高電話機器人接通率 福建微碼電話機器人 銷售電銷機器人詐騙 平?jīng)龈叩碌貓D標注商戶要收費嗎

1.react + axios 跨域訪問一個域名

配置非常簡單,只需要在當前的 package.json 文件里面配置:

"proxy":"http://iot-demo-web-dev.autel.com", //當然,這里是一個假地址

像這樣:

這樣跨域便完成了,當然,也可以像網(wǎng)上那樣,多幾段代碼,像這樣:

我不知道你們寫入這段代碼會怎么樣,反正我是會報錯,具體報錯是怎么我這里沒辦法展示,因為我的項目已經(jīng) 運行了 npm run eject 這個命令

報錯的意思大概就是 proxy 希望得到的是一個字符串,而現(xiàn)在得到的是一個對象,所已我只能采取 第一張圖片的方法進行跨域

而后我們安裝axios ,當然,其他的也行,在 src 目錄項目建一個 api文件, 再在api文件里面建一個 user.js 寫上下面這段代碼

import axios from 'axios'

export function _user(data) {
 return axios.get('device/detail', data)
}

我這里的跨域使用的是第一張圖片上的那種跨域

在你需要發(fā)送請求的地方寫上以下代碼:

import { _user } from '../api/user'

 componentDidMount() {
 let res = _user({})
 console.log(res)
 }

接下來咱們就能愉快的獲得后臺給我們的數(shù)據(jù)了

上面的那種跨域呢,可以說是非常方便,但是吧,如果后臺給我們兩個甚至三個不同的域名呢   怎么辦,那我們就得使用插件

2.react +axios 跨域訪問多個域名

安裝插件:npm install --save http-proxy-middleware

安裝好了之后咱們是開始配置啦:

1.首先暫時運行命令將配置暴露出來

npm run eject
or
yarn eject

在這里你可能會遇到一個報錯:

那這個時候你可以將報錯百度一下,或者跟著我繼續(xù)操作

報錯的原因呢是因為咱們在使用腳手架搭建 react 時,系統(tǒng)會自動給我們添加一個 .gitignore 文件,如果你沒有提交到倉庫過,你就需要先提交到倉庫

完成這兩步之后就可以繼續(xù) 命名 npm run eject ,等配置文件暴露完成之后,你的 package.json 可能非常多配置,咱們不用管,在 src 下面建一個 setupProxy.js 在里面寫上下面代碼:

const { createProxyMiddleware } = require('http-proxy-middleware')
module.exports = function (app) {
 app.use(
 createProxyMiddleware('/api', {
  target: 'http://iot-demo-web-server-dev.autel.com',
  changeOrigin: true,
 })
 )
 app.use(
 '/sys',
  createProxyMiddleware({
  target: 'http://localhost:5001',
  changeOrigin: true,
 })
 );
}

找到 scripts 路徑 打開 strat.js

在第 117行左右 協(xié)商下面代碼:

require('../src/setupProxy')(devServer) //注意路徑是否正,是你剛才建的那個文件

如此 多個跨域便成功了,值得注意的就是, 需要在你請求的具體路徑前面加上 api 或 sys 像這樣

總結(jié)

到此這篇關(guān)于react axios 跨域訪問一個或多個域名的文章就介紹到這了,更多相關(guān)react axios 跨域內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • React中使用axios發(fā)送請求的幾種常用方法
  • 關(guān)于React Native使用axios進行網(wǎng)絡(luò)請求的方法
  • react+axios實現(xiàn)github搜索用戶功能

標簽:衡陽 黔東 邯鄲 婁底 內(nèi)江 德陽 樂山 海南

巨人網(wǎng)絡(luò)通訊聲明:本文標題《react axios 跨域訪問一個或多個域名問題》,本文關(guān)鍵詞  react,axios,跨域,訪問,一個,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《react axios 跨域訪問一個或多個域名問題》相關(guān)的同類信息!
  • 本頁收集關(guān)于react axios 跨域訪問一個或多個域名問題的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    罗田县| 金昌市| 敦化市| 牡丹江市| 襄樊市| 遂川县| 虎林市| 汨罗市| 吴江市| 莱西市| 会东县| 南陵县| 韶山市| 克山县| 汶上县| 革吉县| 虞城县| 深圳市| 岑溪市| 广南县| 伊宁市| 萍乡市| 德令哈市| 永昌县| 铜川市| 武定县| 南华县| 会宁县| 郁南县| 英吉沙县| 嘉禾县| 高密市| 彭阳县| 合山市| 中超| 新兴县| 台南县| 张家界市| 靖边县| 万安县| 大英县|