通过 HTTPS 443 进行 Java 远程日志记录

标签 java sockets logging https applet

如果我有一个站点的 java 小程序,是否可以通过 HTTPS 进行远程日志记录?这是如何工作的?

我知道有java sockethandler,它可以将日志定向到服务器,但是我应该在服务器端做什么,这样我就可以获取日志并将其保存到服务器中的文件中。我尝试创建一个日志服务器应用程序并将其放在服务器上,但如果我指定端口 443,它会说

 `java.net.BindException: Address already in use: JVM_Bind`

有人可以指出我并举一些例子我应该在小程序端和服务器端做什么?

最佳答案

该服务器上的 TCP 端口 443 已被使用 - 因此您必须使用不同的端口。

SSL 可以在任何端口上工作 - 443 只是 HTTPS 的标准端口。因此,如果您启动 SSLServerSocket,您可以将其绑定(bind)到任何端口。

如果您的小程序使用端口 1234,那么在您的小程序中您可以使用 SSLSocket 实例并让它连接到您的服务器 URL 和端口。

请注意,您很可能正在使用自签名证书。在这种情况下,您必须在小程序中嵌入自定义证书,并在打开 SSL 连接时将其设置为受信任证书。

关于通过 HTTPS 443 进行 Java 远程日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10437544/

相关文章:

java - 是否可以在不调用构造函数的情况下在 Java 中创建对象的实例?

Java:合并两个 com.google.common.collect.Table

python - 服务器的非阻塞套接字

java - jvisualvm:软件导致连接中止:套接字写入错误

java - 如何知道另一侧的套接字何时关闭

java - 如何从单个 Docker 容器中捕获多个日志流?

java - 如何从可运行的可调用对象中获取类名

PostgreSQL 如何查找最近 n 分钟内的任何更改

c# - 打印 C# Web 服务的 SOAP 请求和响应

java - JSONArray 在编码时丢失