我的回答有点晚了,但我建议为 Drupal 编写一个模块,该模块插入其 XML-RPC 功能并为您完成工作。
换句话说,您将从 Java 应用程序 (http://ws.apache.org/xmlrpc/client.html) 向您的 Drupal 站点上由模块控制的路径发出 XML-RPC 请求(例如“example.com /user/is-logged-in')。Drupal 模块将“控制”该路径,并接收所有请求。从那里,Drupal 模块的一项简单工作就是对数据库进行查询,以确定会话是否与登录用户关联(如果关联用户为 0,则用户未登录 - 否则用户已登录在)。然后 Drupal 模块将简单地返回 true 或 false(如果需要,或者更详细的用户详细信息数组)。
我很快就会处理一个类似的案例,并且可能会沿着这条路走下去。就我而言,我有一个提供文件下载的 Drupal 站点。下载需要通过 Java servlet 完成,但只有登录的人才能下载。因此,servlet 将联系 Drupal 站点以检查具有 cookie 中提供的会话 id 的用户是否已登录,然后确定是否应该开始下载。
换句话说:
Java --> XML-RPC 请求 --> Drupal 站点 --> XML-RPC 响应 --> Java。