applet 调用 java web 服务

标签 java tomcat https apache-axis applet


我有一个由浏览器加载的小程序。
此小程序对服务器进行 Web 服务调用。
如果我签署小程序并由服务器通过 https 下载它,然后我调用 Web 服务,是否可以重用现有的 ssl session ,或者是否必须重新建立 https?
我认为必须重新建立 https(即 ssl 握手),因为初始连接是由浏览器建立的。是这样吗?
如果是,那么有没有办法在用户开始使用小程序时避免重新认证? IE。重用之前的 ssl 连接,还是不可能?顺便说一句,Web 服务堆栈是 axis2。

谢谢

最佳答案

https 和身份验证是不同的东西。当然,当您通过 https 使用用户/密码进行身份验证时,它们会协同工作。

启用客户端认证后,可以使用https进行认证。所以客户端必须向服务器发送一个有效的(签名的)证书。但我想你有一个通过 https 身份验证方法的用户/密码。

浏览器登录后,通常服务器会创建并保持 session ,浏览器会收到 session cookie。该 cookie 将在登录后根据连续请求发送(仍由 https 加密)。

如果您将 session cookie 传递给小程序,小程序可以重用该 session 。

更新

无法向您详细解释。您应该搜索并阅读 Java Applet communication .

  • 您可以从 javascript和访问网络 来自小程序的页面/浏览器状态 (Applet.getAppletContext())。

  • 您可以使用 包含 session 的参数 编号。

当 Web 服务器是 servlet 容器时, session cookie 名称可以是 JSESSIONID。

如果您的网络服务器是一个 servlet 容器,那么您可以通过不同的方式传递 session ID:作为请求 header 中的 cookie 或编码到 URL 中(URL 重写)。

关于applet 调用 java web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4717467/

相关文章:

java - java中的跳球物理,重力

java虚拟机——它是如何分配资源的?

java - 网络不可达异常

java - 开发 Angular7 REST Web 应用程序时出现 'Access-Control-Allow-Origin' 问题

jakarta-ee - Java EE 客户端-服务器架构中的安全性

django - 如何使我的 azure django 项目成为 https?

Java 作用域 : Returning an object instantiated inside a method - Is it dangerous?

eclipse - 运行 Tomcat + Spring + Maven 项目时出现 NoClassDefFoundError (Eclipse)

apache - 为什么我的新 lets encrypt ssl 设置会收到浏览器警告?

node.js - SSL 不适用于 Node.js 应用程序