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

利用node.js實現(xiàn)反向代理的方法詳解

 更新時間:2017年07月24日 10:20:35   作者:zuank  
在實際工程開發(fā)中,會有前后端分離的需求。為了平滑的完成前端請求到后端各個獨立服務(wù),需要一個中間件實現(xiàn)請求轉(zhuǎn)發(fā)的功能,利用Nginx可以實現(xiàn),在這里使用nodejs實現(xiàn)一個反向代理服務(wù)器。本文主要介紹了關(guān)于利用node.js實現(xiàn)反向代理的相關(guān)資料,需要的朋友可以參考下。

本文主要給大家介紹的是關(guān)于利用node.js實現(xiàn)反向代理的相關(guān)內(nèi)容,分享出供大家參考學(xué)習(xí),下面話不多說,來一起看看詳細(xì)的介紹:

跨域問題是前端開發(fā)很常見的問題解決方案有很多種

  • jsonp返回
  • Access-Control-Allow-Origin:'*' (需要注意的是 對于post請求會變成option請求需求后端支持)
  • 前端添加代理

前端添加代理

以vue-cli為例,前端添加代理

dev: {
 env: require('./dev.env'),
 port: 8888,
 autoOpenBrowser: true,
 assetsSubDirectory: 'static',
 assetsPublicPath: '/',
 proxyTable: {
 '/api':{
 target: 'http://localhost:3000',
 changeOrigin: true,
 }
 }

其中'/api'為接口的前綴,target為后端服務(wù)地址

前端請求示例

vm.$http.post('/api/reg', JSON.stringify(info)).then(() => {

 }, () => {

 });

反向代理

反向代理可以理解為指定一個服務(wù)地址為內(nèi)部服務(wù)器地址。

為什么需要反向代理

如果只是作為接口請求,其實前端搭建代理服務(wù)器就可以了,但是代理服務(wù)器并不能滿足所有的日常開發(fā)。

比如說單點登錄的實現(xiàn),需求服務(wù)端做302跳轉(zhuǎn)。但是前端文件沒有部署到后端服務(wù)器時,set-cookie是不能成功種下cookie登錄信息的。

這就需要在后端服務(wù)器添加反向代理。

示例如下

const proxy = httpProxy.createProxyServer();
const proxyServer = http.createServer((req, res) => {
 proxy.web(req, res, {
 target: 'http://localhost:8888',
 });
});
proxyServer.listen(8088, () => {
 console.log('proxy server is running ');
});

這樣前端開發(fā)就可以在8088端口了,當(dāng)然熱加載功能是在前端服務(wù)器的8888端口

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • NVM安裝nodejs的方法實用步驟

    NVM安裝nodejs的方法實用步驟

    安裝node的方式有很多種,本文主要介紹了NVM安裝nodejs的方法實用步驟,希望能幫助大家來解決問題,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Express之get,pos請求參數(shù)的獲取

    Express之get,pos請求參數(shù)的獲取

    本篇文章主要介紹了Express之get,pos請求參數(shù)的獲取的相關(guān)知識,具有很好的參考價值。下面跟著小編一起來看下吧
    2017-05-05
  • node.js 用socket實現(xiàn)聊天的示例代碼

    node.js 用socket實現(xiàn)聊天的示例代碼

    本篇文章主要介紹了node.js 用socket實現(xiàn)聊天的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • 使用Node.js的readline模塊逐行讀取并解析大文件

    使用Node.js的readline模塊逐行讀取并解析大文件

    在Node.js環(huán)境中處理大文件是一個常見的需求,尤其是在處理日志文件、數(shù)據(jù)庫導(dǎo)出、或任何形式的大規(guī)模文本數(shù)據(jù)時,本文將深入探討如何使用Node.js的readline模塊來實現(xiàn)這一功能,并討論相關(guān)的性能優(yōu)化和注意事項,需要的朋友可以參考下
    2024-09-09
  • node.js中的dns.getServers方法使用說明

    node.js中的dns.getServers方法使用說明

    這篇文章主要介紹了node.js中的dns.getServers方法使用說明,本文介紹了dns.getServers方法說明、語法和實現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • Node.js本地搭建簡單頁面小游戲的過程

    Node.js本地搭建簡單頁面小游戲的過程

    Node.js是能夠在服務(wù)器端運行 JavaScript 的開放源代碼、跨平臺運行環(huán)境,Node.js 大部分基本模塊都用 JavaScript 語言編寫,下面將介紹如何簡單幾步實現(xiàn)遠(yuǎn)程公共網(wǎng)絡(luò)下訪問windwos node.js的服務(wù)端
    2024-01-01
  • node.js中的fs.chmod方法使用說明

    node.js中的fs.chmod方法使用說明

    這篇文章主要介紹了node.js中的fs.chmod方法使用說明,本文介紹了fs.chmod方法說明、語法、接收參數(shù)、使用實例和實現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • express項目文件目錄說明以及功能描述詳解

    express項目文件目錄說明以及功能描述詳解

    這篇文章主要給大家介紹了關(guān)于express項目文件目錄說明以及功能描述的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • npm出現(xiàn)Cannot?find?module?'XXX\node_modules\npm\bin\npm-cli.js'錯誤的解決方法

    npm出現(xiàn)Cannot?find?module?'XXX\node_modules\npm\bin\np

    最近在啟動項目的時候會報這個錯就是npm丟失,所以下面這篇文章主要給大家介紹了關(guān)于npm出現(xiàn)Cannot?find?module?'XXX\node_modules\npm\bin\npm-cli.js'錯誤的解決方法,需要的朋友可以參考下
    2022-08-08
  • CentOS 8.2服務(wù)器上安裝最新版Node.js的方法

    CentOS 8.2服務(wù)器上安裝最新版Node.js的方法

    這篇文章主要介紹了CentOS 8.2服務(wù)器上安裝最新版Node.js的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12

最新評論