gpt4 book ai didi

javascript - Node.js 作为 JSON 转发器

转载 作者:数据小太阳 更新时间:2023-10-29 04:34:04 29 4
gpt4 key购买 nike

我是 Node.js 的新手,但我想将它用作一个快速的 Web 服务器,它只需接收请求 uri,然后在返回 JSON 流的内部服务上运行查询。

即像这样:

http.createServer(function(request, response) {
var uri = url.parse(request.url).pathname;
if(uri === "/streamA") {
//send get request to internal network server http://server:1234/db?someReqA -->Returns JSON ....?
//send response to requestor of the JSON from the above get ....?
}
else if(uri === "/streamB") {
//send get request to internal network server http://server:1234/db?someReqB -->Returns JSON ....?
//send response to requestor of the JSON from the above get....?
}.listen(8080);

我使用的是最新的稳定版 node.js - 版本 0.4.12。我希望这会很容易做到,但是,我无法在网上找到一些示例,因为它们似乎都使用旧的 API 版本,所以我一个接一个地收到错误。

是否有人能够提供适用于新 Node API 的上述代码解决方案?

谢谢!

最佳答案

这里有一段代码可以解释你的任务:

var http = require('http');
var url = require('url')

var options = {
host: 'www.google.com',
port: 80,
path: '/' //Make sure path is escaped
}; //Options for getting the remote page

http.createServer(function(request, response) {
var uri = url.parse(request.url).pathname;
if(uri === "/streamA") {
http.get(options, function(res) {

res.pipe( response ); //Everything from the remote page is written into the response
//The connection is also auto closed

}).on('error', function(e) {
response.writeHead( 500 ); //Internal server error
response.end( "Got error " + e); //End the request with this message
});

} else {
response.writeHead( 404 ); //Could not find it
response.end("Invalid request");

}

}).listen(8080);

关于javascript - Node.js 作为 JSON 转发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7539715/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com