我正在通过com.sun.net.httpserver设置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
答案 0 :(得分:1)
您是在本地开发计算机上执行此操作,而您的公用计算机实际上是其他地方的独立计算机吗?那显然是行不通的。
如果这是问题所在,请在安装中将您的IP地址设置为可配置的属性,而不是对其进行硬编码。否则,请使用getLocalHost()(并正确配置计算机的网络和DNS选项,以使其不会返回127.0.0.1)。