我在节点上不太好,需要你的帮助。
我想让自己的节点成为翻译者'。这是什么意思?
我发现了这样的事情: 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);
}
并在开始时听一些变量。
答案 0 :(得分:-1)
因此,您正在寻找的术语是“反向代理”。有很多方法可以做到这一点,以及很多潜在的问题,但如果你不想使用像reverse-proxy那样的现有模块,那么你可能想要做的就是使用{{ 1}}模块到pipe the request and response streams。像这样:
request