2014-10-08 2 views
-1

클라이언트와 서버 간의 요청 및 응답을 편집 할 수있는 작은 프록시 서버를 만들려고합니다. 그것은 내 상황에 완벽하게 작동요청 및 노드로 응답 본문 편집

var express = require('express'); 
var app = express(); 
var request = require('request'); 


app.use('/login', function(req, res) { 

    var url = request.post({ 
     uri: 'http://192.168.1.53', 
     json: req.body 
    }); 

    req.pipe(url).pipe(res); 
}); 


app.listen(7501); 

:

이것은 내가 지금까지있어 것입니다. 그러나 요청과 응답을 편집해야합니다. 즉, 쿠키가 반환되고 양식 데이터가 전송되었습니다. 도움이 될 것입니다. Node에 꽤 익숙하다.

답변

0

빠른 답변을 요청한 후 요청이있는 새 게시물 요청을 만들었습니다. 그러면 클라이언트에게 표현을 통해 두 번째 응답을 반환하는 마술이 발생합니다.

app.use('/login', function(req, res) { 
request.post(
    'http://192.168.1.53', 
    { form: { req: 'auth', cid: '1', em: req.body.em, pw: req.body.pw, rm: true} }, 
    function (error, response, body) { 
     if (!error && response.statusCode == 200) { 
      var cookie = response.headers['set-cookie']; 
      console.log(cookie) 
      console.log(body) //using body-parser 

      res.header('Access-Control-Allow-Origin', '*'); 
      res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE'); 
      res.header('Access-Control-Allow-Headers', 'Content-Type'); 
      res.json({ success: true }); 
     } 
    } 
); 

});