问题标签 [web-client]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
14860 浏览

java - Converting Mono to Pojo without block

Is there a way to convert Mono objects to java Pojo? I have a web client connecting to 3rd party REST service and instead of returning Mono I have to extract that object and interrogate it.

All the examples I have found return Mono<Pojo> but I have to get the Pojo itself. Currently, I am doing it by calling block() on Pojo but is there a better way to avoid block?

The issue with the block is that after few runs it starts throwing some error like block Terminated with error.

0 投票
0 回答
323 浏览

java - 第 1:0 行在字符“H”异常处没有可行的替代方案

我试图创建一个客户端服务器 web api,其中客户端调用 web 服务,比如 web1,然后 web1 成为另一个 web 服务的客户端,比如 web2。web2 返回到 web1,因此客户端执行。我的目标是创建一个 Web 服务组合并将结果打印为两个 Web 服务的提交。

在这样做时我遇到了这个错误:

这里 'hello' 是我调用getMessage()时应该运行的消息,而 'priya' 是在getName()上调用的名称

代码是:

//客户

//web1(这是web2的客户端)

代码中没有错误,但是在运行时出现错误。

0 投票
1 回答
735 浏览

java - 使用 Vert.x Web 客户端正确发送带有标头的 GET 请求

我有一个内部端点,我正在尝试GET使用带有 Java 的 Vert.x Web 客户端向它发送请求。到目前为止,我无法成功取回任何数据。

如果我卷曲端点,它就可以正常工作(这些是内部端点)。我尝试向其发送GET请求的服务需要一些标头和数据:

但是,如果我尝试在 Vert.x 中的一个路由器端点中使用它,我会收到一个错误:

我从 else 语句中得到的错误消息是:

我究竟做错了什么?我一直在使用它作为参考:Vert.x Web Client

============================================

解决方案

============================================

我不得不改变

还必须.as(BodyCodec.jsonArray())在上述行下方添加,因为我得到的结果是一个 Json 数组。

0 投票
2 回答
1314 浏览

java - 如何在 Java 中通过 WebClient 在 Vertx 路由器中使用期货

我有一个带有路由器端点的 Vertx 应用程序:

这个路由器调用一个方法,它应该在浏览器中返回一个 JSON 对象,或者任何客户端调用这个端点。JSON 对象实际上来自完全不同的服务。我正在使用 Vert.x 的WebClient库来调用此服务。

我从中获得的数据my-site.com很好,并使用我的 System.out 命令显示在控制台中。问题是我无法进入response.write.

阅读起来,我看到这与期货有关。我不太了解这个概念,所以我一直在阅读大量内容,但找不到任何适合我的特定代码的示例。

我将如何实现期货,以便将我收到的数据my-site.com放入我的 Json 对象(data)中,然后可以用于response.write