Nodejs tcp server ve java tcp client haberleşmesi
Bir projede kullanmak üzere nodejs tcp server ile haberleşen java uygulamasına ihtiyacım oldu.
Nodejs tcp server kodları ve bağlanıp veri gönderen java uygulamasının kodu aşağıda…
Node js için a.js
var javaPort = 8080; var javaServer = require('net').createServer(); javaServer.on('listening', function () { console.log('Server dinleniyor: ' + javaPort); }); javaServer.on('error', function (e) { console.log('Server hatası: ' + e.code); }); javaServer.on('close', function () { console.log('Server kapandı'); }); javaServer.on('connection', function (javaSocket) { var clientAddress = javaSocket.address().address + ':' + javaSocket.address().port; console.log('Java ' + clientAddress + ' bağlandı'); javaSocket.on('data',function(data){ var data1=data.toString('utf-8'); console.log(data1); }); javaSocket.on('close', function() { console.log('Java ' + clientAddress + ' çıkış yaptı'); }); });
javaServer.listen(javaPort);
Java Uygulaması.
Client.java
package tcpclient; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.Socket; public class Client { public static void main(String[] args) { // TODO Auto-generated method stub try { Socket nodejs = new Socket("sunucu ip numarası", 8080); sendMessage(nodejs, "Merhaba..."); Thread.sleep(1000); int x = 0; while (true) { sendMessage(nodejs, x + "gönderildi \n"); x++; Thread.sleep(1000); System.out.println(x + " sunucuya gönderildi"); //bilgileri almak: // System.out.print(readMessage(nodejs)); } } catch (Exception e) { e.printStackTrace(); } } public static void sendMessage(Socket s, String message) throws IOException { s.getOutputStream().write(message.getBytes("UTF-8")); s.getOutputStream().flush(); } public static String readMessage(Socket s) throws IOException { InputStream is = s.getInputStream(); int curr = -1; ByteArrayOutputStream baos = new ByteArrayOutputStream(); while ((curr = is.read()) != -1) { if (curr == '\n') { break; } baos.write(curr); } return baos.toString("UTF-8"); } }
Gelen arama terimleri:
- nodejs server