Skip to content

Instantly share code, notes, and snippets.

@nihat-js
Last active December 11, 2023 18:34
Show Gist options
  • Save nihat-js/da5ae3d4b93a4e10d9a86e73dbc67b29 to your computer and use it in GitHub Desktop.
Save nihat-js/da5ae3d4b93a4e10d9a86e73dbc67b29 to your computer and use it in GitHub Desktop.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.nio.charset.StandardCharsets;
public class MyServer {
public static void main(String[] args) throws IOException {
int port = 6655;
ServerSocket serverSocket = new ServerSocket(port);
System.out.println("Server is running and waiting for connections...");
while (true) {
Socket clientSocket = serverSocket.accept();
System.out.println("Client connected: " + clientSocket.getInetAddress());
BufferedReader reader = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
StringBuilder request = new StringBuilder();
String line;
while ((line = reader.readLine()) != null && !line.isEmpty()) {
request.append(line).append("\r\n");
}
System.out.println("Received HTTP request:\n" + request.toString());
String httpResponse = "HTTP/1.1 200 OK\r\n\r\n" + "Hello, this is a sample HTTP response from TCP server!";
OutputStream outputStream = clientSocket.getOutputStream();
outputStream.write(httpResponse.getBytes(StandardCharsets.UTF_8));
outputStream.flush();
clientSocket.close();
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment