gpt4 book ai didi

java - 当我尝试使用 VERTX HTTP CLIENT 获取数据时,它给了我 null

转载 作者:太空宇宙 更新时间:2023-11-04 12:08:06 25 4
gpt4 key购买 nike

嗨,有人可以看一下吗:

当我尝试使用 VERTX HTTP CLIENT 获取数据时,它在最后一行给出空指针异常,并且当我使用 java HTTP CLIENT 时相同的 URL 提供数据:

HttpClientOptions options = new HttpClientOptions().setKeepAlive(false);

options.setLogActivity(true);
options.setDefaultHost("http://delvmpllbbab10");
options.setDefaultPort(7003);

HttpClient client = vertx.createHttpClient(options);
HttpClientResponse[] clientResponse = {null};

client.request(HttpMethod.GET, "/rcsservices/homePage", response -> {
System.out.println("Received response with status code " + response.statusCode());

clientResponse[0] = response;

}).putHeader("content-type", "application/json").end(clientResponse[0].toString());

这段代码我有问题吗...

最佳答案

这是正确的,您将得到一个 NPE,因此在您的代码中,您使用 { null } 初始化 clientResponse 变量。如果您现在了解代码的执行方式,您就会明白原因:

  1. 创建请求对象:client.request(
  2. 您配置收到响应后将执行的操作:`response -> { ... }
  3. 您向请求添加 header :putHeader(...)
  4. 您触发请求end(clientResponse[0].toString())

现在您看到 clientResponse[0] 仍然为 null(这是您初始化它的值。所以发生的情况是您正在调用:

null.toString()

这是无效的,并且总是抛出空指针异常

关于java - 当我尝试使用 VERTX HTTP CLIENT 获取数据时,它给了我 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40149084/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com