Как мне сделать перенаправление 302 с помощью node-http-proxy?

Мой код:

var path = require('path');
var util = require('util');
var http = require('http');
var fs = require('fs');
var httpProxy = require('http-proxy');


httpProxy.createProxyServer({
    target: 'http://localhost:9000',
    agent: https.globalAgent,
    headers: {
        host: 'localhost'
    }
})
.listen(8000);

util.puts('proxy server listening on port 8000');

http.createServer(function targetServer(req, res) {
    res.writeHead(302, { 'Location': '/' }); //Here is the 302
    util.puts('request successfully proxied to: ' + req.url + '\n' + JSON.stringify(req.headers, true, 2));

    res.end();

})
.listen(9000);

util.puts('target server listening on port 9000');

когда я делаю запрос из моего браузера, я получаю следующую ошибку:

Error: socket hang up

Я понятия не имею, что означает эта ошибка. Может кто-нибудь помочь мне понять это?

1 ответ

Я заставил это работать.
Я должен был сделать 2 вещи:

  1. Включите пакет follow-redirects (npm install follow-redirects) и измените мою инициализацию http: Кому:
    var http = require ('follow-redirects'). http; из: var http = require('http');
  2. включите свойство {changeOrigin: true} в CreateProxyServer: var proxy = httpProxy.createProxyServer({changeOrigin: true, toProxy: true, });
Другие вопросы по тегам