我正在为我们公司设计企业安全服务器 - 我们拥有许多不同的应用程序,大部分是用 Java 编写的,还有一些是用 PHP 编写的。我可以提供一个远程 API,让每个应用程序都能访问服务器。我还可以创建每个应用程序都可以包含的“代理”,它们可以为它们完成所有工作,但允许我的服务器控制它们的 session ,从而控制它们的身份验证/授权。问题是我最好用 java 编写代理,因为我们 80% 或更多的应用程序都是用 java 编写的。
如果我用 java 编写代理,有人知道这个程序是否可以访问 php session 吗?如果没有,是否有人可以就更好的方法提出建议?
最佳答案
session 数据作为 (php) 序列化数组存储在临时文件夹中。这些位置在 php.ini 文件中设置。
但是您可以通过编写自己的处理程序来更改数据的格式及其存储位置(例如到数据库或共享内存或其他地方)。
快速谷歌搜索表明有几个人已经用 Java 为 PHP 数据编写了[反]序列化程序。例如http://hurring.com/scott/code/java/serialize/
如果您对内置的 PHP 序列化函数有疑问 - 使用谷歌搜索 WDDX(IIRC 作为标准)并将数据序列化为 XML。
如果您希望代理独立于 Web session 继续运行,您可能需要考虑如何使 session 数据对 PHP 保持 Activity 状态。
C.
关于java - 从命令行 java 程序访问 php session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2118886/