簡體   English   中英

通過套接字組合Java和Node.js

[英]Combining Java and Node.js through Sockets

我有以下Node.js代碼:

var http = require('http');

http.createServer(function(req, res)) {
    console.log("URL request"+req.url);
    res.writeHead(200, {'Content-Type':'text/plain'});
    res.end('Hello World\n');
}).listen(9898, '127.0.0.1');

console.log('Server locally running at http://127.0.0.1:9898/');

我正在使用Java中的Socket類制作一個也連接到端口9898的套接字。我希望Node.js編寫的任何內容(在本例中為“ Hello World”)都由Java類處理。 到目前為止,這是我為Java類准備的:

Socket s = new Socket(serverAddress, 9898);
BufferedReader input =
        new BufferedReader(new InputStreamReader(s.getInputStream()));

我的問題是如何獲取Java代碼讀取的“ Hello World”,以便每當我調用System.out.println(input.readLine()) ,它都會顯示“ Hello World”?

您在第三行上有一個額外的')',但是您的代碼似乎可以正常工作:

var http = require('http');

http.createServer(function(req, res) {
    console.log("URL request"+req.url);
    res.writeHead(200, {'Content-Type':'text/plain'});
    res.end('Hello World\n');
}).listen(9898, '127.0.0.1');

console.log('Server locally running at http://127.0.0.1:9898/');

我想您需要創建一些Java功能來向運行節點服務器的url:port發出http請求。 它可能不會像“ input.readLine()”那樣簡單。

也許這樣的事情將有助於獲取Java代碼以從節點獲取數據:

如何在Java中將http響應正文作為字符串獲取?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM