节点转换>客户>节点> json>节点>客户

时间:2017-11-14 19:09:52

标签: json node.js ajax

我在节点上不太好,需要你的帮助。

我想让自己的节点成为翻译者'。这是什么意思?

我发现了这样的事情: How to forward a request to other endpoint in node.js

我想通过ajax请求发送到我的节点服务器,然后这个服务器应该向json发送请求并在浏览器中显示接收的数据。

如何更改它以接收回复并将其投放到浏览器?

var express = require('express');
var fs = require('fs');
var path = require('path');
var http = require('http');
var https = require('https');
var app = express();

var HTTP_PORT = 3000;

// Create an HTTP service
http.createServer(app).listen(HTTP_PORT,function() {
  console.log('Listening HTTP on port ' + HTTP_PORT);
});


//endpoint for tracking
app.get('/track', function(req, res) {

  sendRequestToOtherEndPoint(req);

  processRequest(req);
  res.setHeader('Content-Type', 'application/json');
  res.send('Req OK');
});

function processRequest(req){
    console.log("request processed");
}

function sendRequestToOtherEndPoint(req){
    //magic here :)
}

我花了很多时间在上面,并没有想法。

我的ajax请求:

<script type="text/javascript">
$(document).ready(function() {
    $("#testbutton").click(function() {
        $.ajax({
url: '',
            dataType: 'json',
            success: function(data) {
                $("#results").append('works');
                alert(data);
            },
             error: function() {
                $("#results").append("error");
                alert('error');
            }
        });
    });
});
</script>

我的实际服务器仅包含

  request({
      url: ,
      method: "GET",
      timeout: 10000,
      followRedirect: true,
      maxRedirects: 10
  },function(error, response, body){
      if(!error && response.statusCode == 200){
          console.log('sucess!');
           console.log(response.body);
      }else{
          console.log('error' + response.body);
      }

并在开始时听一些变量。

1 个答案:

答案 0 :(得分:-1)

因此,您正在寻找的术语是“反向代理”。有很多方法可以做到这一点,以及很多潜在的问题,但如果你不想使用像reverse-proxy那样的现有模块,那么你可能想要做的就是使用{{ 1}}模块到pipe the request and response streams。像这样:

request