【问题标题】:Java Http/2 serverJava Http/2 服务器
【发布时间】:2017-11-15 19:02:08
【问题描述】:

我是 HTTP 世界的新手,我一直在阅读有关 HTTP 协议开发的 article,直到 2015 年底对 HTTP/2 的最新更新。

到目前为止,当您想在 java 中创建一个简单的 HTTP 服务器时,您可以使用:

 HttpServer.create(new InetSocketAddress(8000), 0)

就像 2010 年的 answer 中描述的那样。

我想知道现在如何仅使用 Java SE API 构建 HTTP/2 服务器?

【问题讨论】:

  • 我想知道现在如何仅使用 Java SE API 构建 HTTP/2 服务器?您需要编写一个。
  • Java HTTP/2 Server Socket的可能重复
  • @Pshemo 问题说 今天。 :)
  • @ElliottFrisch 你找到我了。我也错过了 Java 9 只提供客户端而不提供服务器的事实......删除了评论。

标签: java http http2


【解决方案1】:

如前所述,您不能仅使用 Java SE API 来执行此操作。但是,您可以使用 Jetty(第 3 方 Java API)。

https://webtide.com/introduction-to-http2-in-jetty/

【讨论】:

    【解决方案2】:
    【解决方案3】:

    使用 Undertow Server API 的基本 HTTP2 服务器: https://undertow.io/

      Undertow server = Undertow.builder().setServerOption(UndertowOptions.ENABLE_HTTP2, true)
                    .addHttpListener(port, host).setHandler(exchange -> {
                        System.out.println("Port: " + port + ", Client address is: " + exchange.getConnection().getPeerAddress().toString());
                        exchange.getResponseHeaders().put(Headers.CONTENT_TYPE, "application/json");
    //                  exchange.getResponseSender().send("Undertow Hi");
        
                    }).build();
            server.start();  
    

    【讨论】:

      猜你喜欢
      • 2015-06-06
      • 2018-05-11
      • 2017-09-06
      • 2021-04-14
      • 2015-05-17
      • 2020-03-23
      • 1970-01-01
      • 2019-09-25
      • 2015-04-15
      相关资源
      最近更新 更多