Сервер HTTPS (SSL / TLS) vertx не работает.Я не могу получить доступ https://localhost - PullRequest
1 голос
/ 31 марта 2019

Я создал HTTPS-сервер в vert.x.

vertx.createHttpServer(
    new HttpServerOptions()
        .setSsl(true)
        .setKeyStoreOptions(new JksOptions()
            .setPath("path/to/keystore")
            .setPassword("password")
        )
).requestHandler( (HttpServerRequest req) -> {
    System.out.println("Access.");
    req.response().putHeader("Content-Type", "text/html; charset=utf-8");
    req.response().end("Hello world!");
    // ...
}).listen(80, "localhost");

Я создал хранилище ключей с keytool.

keytool -genkeypair -keystore keystore -storetype jks

Мне удалось развернуть вертикалку.Но сервер не отвечает.

Доступ к https://localhost ничего не дает.Даже журнал не печатается.

Что не так?

Я пробовал некоторые варианты, как показано ниже.

vertx.createHttpServer(
    new HttpServerOptions()
        .setSsl(true)
        .setKeyStoreOptions(new JksOptions()
            .setPath("path/to/keystore")
            .setPassword("password")
        )
        // .setUseAlpn(true)
        // .setTrustOptions(new JksOptions()
        //  .setPath("C:/Recoeve/keystore")
        //  .setPassword("Xs41Kipid$ps15")
        // )
        // .setClientAuthRequired(false)
        // .setClientAuth(ClientAuth.NONE)
        // .addEnabledSecureTransportProtocol(TCPSSLOptions.DEFAULT_ENABLED_SECURE_TRANSPORT_PROTOCOLS.get(1))
        // .addEnabledSecureTransportProtocol("TLSv1.3")
        // .setEnabledSecureTransportProtocols(TCPSSLOptions.DEFAULT_ENABLED_SECURE_TRANSPORT_PROTOCOLS)
).requestHandler( (HttpServerRequest req) -> {
    // ...
}).listen(80, "localhost");

Но код дает исключение во время выполнения.

...