nodejs 代理 解決開發環境跨域問題


 前后端分離項目中,會遇到跨域問題。解決方法無非就是jsonp cors等。

本次項目前端不搭node服務,線上用nginx搭站點,nginx轉發ajax請求server。

本地開發環境的跨域問題用node做代理轉發請求server(完美解決開發環境下請求server的跨域問題)。

node代碼如下

方法一:request包

"use strict";
const express = require('express');
const path = require('path');
const app = express();
const request = require('request');

// 配置靜態文件服務中間件
let serverUrl='http://220.231.2.29:7668';//server地址
app.use(express.static(path.join(__dirname, './')));//靜態資源index.html和node代碼在一個目錄下
app.use('/', function(req, res) {
  let url = serverUrl + req.url;
  req.pipe(request(url)).pipe(res);
});

app.listen(3000,'127.0.0.1', function () {//前端ajax地址寫 http://127.0.0.1:3000/
  console.log('server is running at port 3000');
});

 方法一:http-proxy-middleware包

var express = require('express');
var proxy = require('http-proxy-middleware');
var app = express();
app.use('/', proxy({ target: 'http://www.baidu.com', changeOrigin: true }));
app.listen(3000);

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM