Создайте HttpServer с публичным IPv4-адресом - PullRequest
0 голосов
/ 08 мая 2019

Я настраиваю HttpServer через com.sun.net.httpserver. Я хочу получить доступ к серверу через мой публичный IPv4-адрес.

Мне уже удалось заставить его работать с localhost.

HttpServer server = HttpServer.create(new InetSocketAddress(8080), 0);
server.createContext("/", Main::server.setExecutor(null);
server.start();

Я попробовал это с

InetAddress ip = InetAddress.getByName("83.180.65.342");
HttpServer server = HttpServer.create(new InetSocketAddress(ip, 8080), 0);

Но возвращается

java.ne.BindException: Cannot assign requested address: bind

1 Ответ

1 голос
/ 08 мая 2019

Вы делаете это на локальной машине разработки, в то время как ваша публичная машина на самом деле является отдельной машиной в другом месте?Это, очевидно, не сработает.

Если это проблема, сделайте ваш IP-адрес настраиваемым свойством при установке, а не жестко кодируйте его.Или используйте getLocalHost () (и правильно настройте параметры сети и DNS на своих машинах, чтобы он не возвращал 127.0.0.1).

...