欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

React開啟代理的2種實用方式

 更新時間:2021年07月29日 11:33:47   作者:Mannqo  
最近有不少伙伴詢問react的代理配置,自己也去試驗了一下發(fā)現(xiàn)不少的問題,在這就將所遇到的心得分享出來,這篇文章主要給大家介紹了關(guān)于React開啟代理的2種實用方式的相關(guān)資料,需要的朋友可以參考下

開啟代理的兩種方式

react并沒有封裝好了的ajax請求的代碼供我們直接使用,在進行交互的時候,我們需要自己封裝ajax代碼或者使用第三方ajax庫,一般我們用axios(輕量級)。

先說一下為什么需要代理?

比如說,在本地寫一個端口為5000的服務(wù)器時,當(dāng)我們通過端口3000去發(fā)生請求,會出現(xiàn)跨域的問題(原來3000端口的ajax引擎把響應(yīng)攔截了),此時可以通過代理來解決問題。所謂的代理就是一個傳遞信息的工具,端口為3000的請求發(fā)給開在3000端口的代理,代理再轉(zhuǎn)發(fā)給5000端口的服務(wù)器,在響應(yīng)的時候,由于代理是沒有ajax引擎的代理,所以可以接收響應(yīng),再傳遞給開在3000端口的腳手架,從而解決了跨域的問題。

react開啟代理的兩種方式

方法一

在package.json文件中添加"proxy": "https://localhost:5000" 配置之后3000端口沒有的資源就會去端口5000找。也就是說會把把發(fā)給端口為3000的請求轉(zhuǎn)發(fā)給開在端口5000的服務(wù)器,但是如果請求的東西再端口3000中已經(jīng)有了的話就不會再轉(zhuǎn)發(fā)到端口5000里面找了。

這種方法只能找一個,但是如果你不只是要再端口5000中找,還想在其它端口號找的話(配置多個代理),就要用下面這個方法了。

方法二

在src中添加一個setupProxy的文件(react腳手架會找到這個文件),復(fù)制如下代碼

配置之后需要在之前發(fā)送請求的地址localhost:3000后加/api1,表示如果在3000端口沒有找到請求所要的資源,就去api1所配置的代理,于是就去訪問端口5000。如果想要配置多個代理,用逗號隔開即可。

changeOrigin用于控制服務(wù)器收到的響應(yīng)頭中Host字段的值。在這里,如果時默認值值,為false的話,服務(wù)器會以為這個請求時來自于端口為3000;但如果把它的值設(shè)置為true,此時服務(wù)器會認為這個請求時來自于端口5000的(其實不是)。這個可以不寫但是最好寫上。

pathWrite時重寫了請求路徑,其實就是剛開始通過/api找到了這個代理,但是當(dāng)代理向端口5000發(fā)生請求的時候要把/api去掉,比如https://localhost:3000/api/student,如果沒有把api去掉就相當(dāng)于請求地址為/api/students,但實際上我們要請求的地址應(yīng)該是/student。

const proxy = require('http-proxy-middleware');
​
module.exports = function (app) {
    app.use(
        proxy('/api1', {
            target: 'http://localhost:5000',  
            changeOrigin: true,      // 默認值是false
            pathRewrite: { '^/api1': '' }  
        }),
        proxy('/api2', {
            target: 'http://localhost:5001',
            changeOrigin: true,      // 默認值是false
            pathRewrite: { '^/api2': '' }
        }),
    )
}

總結(jié)

到此這篇關(guān)于React開啟代理的2種方式的文章就介紹到這了,更多相關(guān)React開啟代理方式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • React useCallback使用教程

    React useCallback使用教程

    useCallback是react中比較重要的一個hook,useCallback 用來返回一個函數(shù),在父子組件傳參或者通用函數(shù)封裝中,起到舉足輕重的作用
    2023-01-01
  • 一文詳解ReactNative狀態(tài)管理rematch使用

    一文詳解ReactNative狀態(tài)管理rematch使用

    這篇文章主要為大家介紹了ReactNative狀態(tài)管理rematch使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • React項目配置prettier和eslint的方法

    React項目配置prettier和eslint的方法

    這篇文章主要介紹了React項目配置prettier和eslint的相關(guān)知識,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • React?Fiber構(gòu)建completeWork源碼解析

    React?Fiber構(gòu)建completeWork源碼解析

    這篇文章主要為大家介紹了React?Fiber構(gòu)建completeWork源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-02-02
  • React 全面解析excel文件

    React 全面解析excel文件

    這篇文章主要介紹了React 全面解析excel文件,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • React構(gòu)建組件的幾種方式及區(qū)別

    React構(gòu)建組件的幾種方式及區(qū)別

    這篇文章主要介紹了React構(gòu)建組件的幾種方式及區(qū)別,組件就是把圖形、非圖形的各種邏輯均抽象為一個統(tǒng)一的概念來實現(xiàn)開發(fā)的模式文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-08-08
  • 詳解如何構(gòu)建自己的react hooks

    詳解如何構(gòu)建自己的react hooks

    我們組的前端妹子在組內(nèi)分享時談到了 react 的鉤子,趁此機會我也對我所理解的內(nèi)容進行下總結(jié),方便更多的同學(xué)了解。在 React 的 v16.8.0 版本里添加了 hooks 的這種新的 API,我們非常有必要了解下他的使用方法,并能夠結(jié)合我們的業(yè)務(wù)編寫幾個自定義的 hooks。
    2021-05-05
  • JavaScript的React Web庫的理念剖析及基礎(chǔ)上手指南

    JavaScript的React Web庫的理念剖析及基礎(chǔ)上手指南

    這篇文章主要介紹了JavaScript的React Web庫的理念剖析及基礎(chǔ)上手指南,React Web的目的即是把本地的React Native應(yīng)用程序項目變?yōu)閃eb應(yīng)用程序,需要的朋友可以參考下
    2016-05-05
  • 一篇文章教你用React實現(xiàn)菜譜系統(tǒng)

    一篇文章教你用React實現(xiàn)菜譜系統(tǒng)

    本篇文章主要介紹了React實現(xiàn)菜譜軟件的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2021-09-09
  • React css-in-js基礎(chǔ)介紹與應(yīng)用

    React css-in-js基礎(chǔ)介紹與應(yīng)用

    隨著React、Vue等支持組件化的MVVM前端框架越來越流行,在js中直接編寫css的技術(shù)方案也越來越被大家所接受。為什么前端開發(fā)者們更青睞于這些css-in-js的方案呢,下面帶你了解它
    2022-09-09

最新評論