从 Spring Boot 向 Java ServerSocket 发送 GET 请求

问题描述 投票:0回答:1

我需要在 Spring Boot 应用程序和 Java ServeSocket 之间进行通信。我已经创建了 Java ServerSocket 和 Spring Boot。

Java ServerSocket 有一个

BufferedReader
作为输入和
OutputStream
作为响应。

我只有两个问题:

  1. 如何从 Spring Boot 向服务器发送 Get 请求?
  2. 如果在这种情况下可以应用第一种方法,如何从 Spring Boot 向 Java ServerSocket 发送 Get 请求?
java spring-boot networking socketserver
1个回答
0
投票

发送 GET 请求的最佳方式是使用高级 API。对于 Spring Boot,目前是 WebClient,它取代了旧的 RestTemplate(另请参阅教程,例如:https://www.baeldung.com/spring-5-webclienthttps://docs.spring .io/spring-boot/docs/3.0.x/reference/html/io.html#io.rest-client.webclient).

要调用服务器,您需要一个 URL,例如

<scheme>:<scheme-specific-part>
。当你说你想要一个 GET 调用时,我假设你的意思是一个 HTTP GET 调用,这使得
<scheme>
协议
http
https
<scheme-specific-part>
采用
//<server-address>:<port>
的形式。因此,在您在本地主机上运行服务器套接字的简单场景中,您可以使用像
http://localhost:<port>/<path>
这样的东西,其中
<port>
是ServerSocket监听的端口,
<path>
是您想要获取的资源。

当然,ServerSocket 是非常底层的。使用高级 API(例如 HttpServlet)或高级 API(例如 RestController)要方便得多,这意味着只需为服务器部分提供另一个 Spring Boot 应用程序。

© www.soinside.com 2019 - 2024. All rights reserved.