我需要在 Spring Boot 应用程序和 Java ServeSocket 之间进行通信。我已经创建了 Java ServerSocket 和 Spring Boot。
Java ServerSocket 有一个
BufferedReader
作为输入和 OutputStream
作为响应。
我只有两个问题:
发送 GET 请求的最佳方式是使用高级 API。对于 Spring Boot,目前是 WebClient,它取代了旧的 RestTemplate(另请参阅教程,例如:https://www.baeldung.com/spring-5-webclient 或 https://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 应用程序。