Добрый вечер, я получил этот сервер здесьКоманда Отправить на HTTP сервер
import java.io.IOException;
import java.io.OutputStream;
import java.net.InetSocketAddress;
import java.util.concurrent.atomic.AtomicInteger;
import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpHandler;
import com.sun.net.httpserver.HttpServer;
public class Test {
public static void main(String[] args) throws Exception {
HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
server.createContext("/test", new MyHandler());
server.setExecutor(null); // creates a default executor
server.start();
}
static class MyHandler implements HttpHandler {
AtomicInteger atomicInteger = new AtomicInteger(0);
int theValue = atomicInteger.get();
@Override
public void handle(HttpExchange t) throws IOException {
String response = String.format("Besuche: %d%n", atomicInteger.addAndGet(1));
t.sendResponseHeaders(200, response.length());
OutputStream os = t.getResponseBody();
os.write(response.getBytes());
os.close();
}
}
}
Сво считая каждый визит я сделать на сайте http://localhost:8000/test Теперь у меня есть клиент, который показывает мне содержание сервера в моей консоли ,
import java.net.*;
import java.io.*;
public class URLConnectionReader {
public static void main(String[] args) throws Exception {
URL test = new URL("http://localhost:8000/test");
URLConnection connect = test.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(connect.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
in.close();
}
}
Я хочу, чтобы клиент отправил сервер команде, которая сбрасывает счетчик на сервере. Я мог бы просто найти это here, но я не знаю, как реализовать это в моем случае. Надеюсь, кто-то может объяснить мне, что я могу сделать сейчас.
я пытался справиться с этим на том же пути, но как он будет сброшен? Если я обновляю, он все еще подсчитывается, но ничего не перезагружает. Как я POST что-то, чем? –
@SebastianKawa см. Редактирование в нижней части ответа –
awesome его работы. Спасибо чувак. У меня просто возникла проблема: если я сброшу его на 0, он начнет отсчет с 2. Я попытаюсь выяснить, почему. Если у вас есть какие-либо советы, пожалуйста. –