2017-12-18 194 views
5

Uygulamam için sahte API çağrıları yaptığım ekspres kullanıyorum.Proxy API çağrıları çerezle çağrılıyor

Çağrılarımı dev sunucuma yönlendirmek için kullanabileceğim bir proxy var mı? Benim kodundan API yerel benim uygulama çalıştırdığınızda aşağıda

Örneğim ekspres kod

var express = require('express'); 
var app = express(); 
var path = require('path'); 
var cors = require('cors'); 


app.use(express.static(path.join(__dirname, 'public'))); 
app.use(express.static(path.join(__dirname, 'dist'))); 

app.get('/brand', function(req,res){ 
    res.send({"brand":"Cadillac","origin":"USA"}); 
}); 

olan "http://localhost:3000/brand" Ben de ayarlamanız gerekir "http://www-dev.abc.com/brand"

önce yönlendirme yönlendirmelidir Çerez, API yalnızca geçerli bir çerez olduğunda veri verir.

Kullanabileceğim bir Proxy var mı? Herhangi bir örnek verebilir misiniz? Seni doğru anladıysam

cevap

1

, sonra gereksinimleri liste benziyor: express ile

  1. Basit entegrasyon.
  2. Vekil yalnızca bir son nokta.
  3. Yalnızca yerel ortamdaki proxy.
  4. Proxy isteği için çerezleri ayarlayabilme.

Kod Örneği:

var express = require('express'); 
var app = express(); 
var path = require('path'); 
var proxy = require('express-http-proxy'); 

app.use(express.static(path.join(__dirname, 'public'))); 
app.use(express.static(path.join(__dirname, 'dist'))); 

if (process.env.NODE_ENV === 'production') { 
    app.get('/brand', function(req,res){ 
    res.send({"brand":"Cadillac","origin":"USA"}); 
    }); 
} else { 
    app.use('/brand', proxy('http://www-dev.abc.com/brand', { 
    proxyReqOptDecorator: function(proxyReqOpts, srcReq) { 
     proxyReqOpts.headers['cookie'] = 'cookie-string'; 
     return proxyReqOpts; 
    } 
    })); 
} 

app.listen(8000); 

Yorumlar:

  • çevre türünü denetlemek için ben ihtiyaçlarınız için inşaat process.env.NODE_ENV === 'production'
  • iyi paket kullanılan express-http-proxy, ancak eğer vekil sunucuya ihtiyacınız olacak ple uç noktaları, acı verici olacaktır. Bu durumda http-proxy'u kontrol edin.
+0

Express-http-proxy ile sorgu dizesi parametrelerini istemciden hızlı sunucuya nasıl geçirebilirim? – user804401

+0

Bu işleve kutudan sahipsiniz. – galkin