我一直在使用Java教程开发服务,并且正在通过localhost:8082进行监听。它工作正常,但是由于我已经关闭计算机的电源,当我尝试监听它时,它返回错误连接被拒绝,并且显示不同响应的唯一端口是8080和8081,当我尝试时,它们会遇到相同的错误通过他们收听服务。 这是代码
package io.vertx.book.message;
import io.vertx.core.json.JsonObject;
import io.vertx.rxjava.core.AbstractVerticle;
import io.vertx.rxjava.core.eventbus.Message;
import rx.Single;
public class HelloConsumerMicroservice extends AbstractVerticle {
@Override
public void start() {
vertx.createHttpServer()
.requestHandler(
req -> {
Single<JsonObject> obs1 = vertx.eventBus()
.<JsonObject>rxSend("hello", "Luke")
.map(Message::body);
Single<JsonObject> obs2 = vertx.eventBus()
.<JsonObject>rxSend("hello", "Leia")
.map(Message::body);
Single
.zip(obs1, obs2, (luke, leia) ->
new JsonObject()
.put("Luke", luke.getString("message")
+ " from " + luke.getString("served-by"))
.put("Leia", leia.getString("message")
+ " from " + leia.getString("served-by"))
)
.subscribe(
x -> req.response().end(x.encodePrettily()),
t -> req.response().setStatusCode(500).end(t.getMessage())
);
})
.listen(8082);
}
}
我不知道为什么它停止工作,但是我已经浏览了很多答案,并且已经尝试清理缓存,但是没有任何改进。有人可以帮忙吗?
我正在使用Linux 18.04,chrome / firefox(均拒绝连接)。
答案 0 :(得分:1)
在使用Ubuntu时,可能是防火墙不允许连接到该端口。
打开终端并输入
sudo ufw allow 8082
希望有帮助
答案 1 :(得分:0)
以某种方式关闭所有内容并重新启动计算机之后,所有内容恢复正常,因此...不知道发生了什么,但是现在就可以了...它可能已经被其他东西使用了。无论如何,谢谢您的帮助!