我有 Flex/AIR 应用程序,它通过 BlazeDS 连接到 tomcat 服务器。我没有发现我必须集成旧的 web 应用程序(struts/jsp),并且我想保持该 web 应用程序不变,除了登录、身份验证和 session 处理之外。也是使用 httpclient 的第三个 Java 应用程序。
目前我有一些 blazeDS 远程对象来通过一些 RPC 调用来处理登录/注销。反过来,FlexSession 对象被创建和处理。有没有办法使用 httpclient 和 javascript 来调用那些 blazeds RPC,这样我就不必重新编码并有 3 种不同的方法来处理登录和 session ?
这应该对 3 个应用程序使用 single_sign_on。
最佳答案
是的,恐怕要以不同的方式处理一切!
您应该只使用 BlazeDS 将 Java 对象序列化到 AMF 或从 AMF 序列化。完成后,将其交给其他人来处理您的业务逻辑。这意味着您只需为业务逻辑提供 API 即可添加不同的入口点。
从身份验证/登录类型内容中,您应该使用类似 spring security 的内容来处理这个问题而不是自己编写。这将此类逻辑与业务逻辑和传输机制解耦,并且无论您如何访问应用程序都可以重用。
对于 session ,这取决于您要存储的内容,但使用 FlexSession 通常不是一个好的计划。
关于java - 将非 Flex 客户端连接到运行 blazeDS 的服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3585167/