php如何将session传递给java程序?知道的说下方案。有例子测试的更好。。可以加分哦。。在线等待...
方案2.我也想到过。我在网上看到一个共享cookies。配置也挺简单。我正在测试。也许能行。?很简单就是:php登陆的时候写一个cookie然后我jsp中,再读取这个co...
方案2.我也想到过。我在网上看到一个共享cookies。配置也挺简单。我正在测试。也许能行。?很简单就是:php登陆的时候写一个cookie
然后我jsp中,再读取这个cookie,看能否读取到。。但是要考虑,如果相同账号在同一台电脑登陆,那读取到可能是同一个cookie。。如果有好意见继续提出来啊。我总觉得不理想。。 展开
然后我jsp中,再读取这个cookie,看能否读取到。。但是要考虑,如果相同账号在同一台电脑登陆,那读取到可能是同一个cookie。。如果有好意见继续提出来啊。我总觉得不理想。。 展开
1个回答
展开全部
思路有几个。你选一个最适合你的方案吧。。
方案一:通过数据库,把 PHP 的 SESSION 存入数据库。JAVA 通过 SESSION_ID 查询数据库即可。
优缺点:速度快效率高,需要配置 PHP 和 MYSQL 提供一个高速的 SESSION 存储表。缺点是不便于跨域、跨站访问。
方案二:将要对接的数据部份存入数据表,通过 PHP 按一定格式(比如XML)打印这些数据。这个页面授权只允许 JAVA 访问。来访者提交某种唯一编号(比如用户名的 MD5 值)访问 PHP 的 url,取得数据。
优缺点:跨域跨服务器都可以使用,对方使用的语言已经不重要。只要能访问这个约定的数据结构即可。缺点是效率比较低,特别在需要频繁访问数据时。
流程:
1、用户在服务器1登陆
2、服务器1验证通过,并将验证信息存到数据库,同时生成一个唯一标识符。
3、用户通过链接访问服务器2,并 GET 提交标识符
4、服务器2把标识符提交给服务器1的接口
5、服务器1查询标识符,并将结果通过接口输出
6、服务器2读取接口返回的数据验证
7、服务器2完成验证,生成自己的 SESSION 或 COOKIE
=====================================================
我建议你用这个方案,每次登陆标识符都是不一样的。如果同时登陆就会产生标识符错误而验证失败。你用 COOKIE 传递这个标识符也是可以的。。
如果你是同一个域下的两个子站。共享 COOKIE 是很容易的事情。。就不用这么费事了。。PHP 可以生成同一个父域的 COOKIE 。
可以找我细谈。在这里回复太慢了。QQ42696883
方案一:通过数据库,把 PHP 的 SESSION 存入数据库。JAVA 通过 SESSION_ID 查询数据库即可。
优缺点:速度快效率高,需要配置 PHP 和 MYSQL 提供一个高速的 SESSION 存储表。缺点是不便于跨域、跨站访问。
方案二:将要对接的数据部份存入数据表,通过 PHP 按一定格式(比如XML)打印这些数据。这个页面授权只允许 JAVA 访问。来访者提交某种唯一编号(比如用户名的 MD5 值)访问 PHP 的 url,取得数据。
优缺点:跨域跨服务器都可以使用,对方使用的语言已经不重要。只要能访问这个约定的数据结构即可。缺点是效率比较低,特别在需要频繁访问数据时。
流程:
1、用户在服务器1登陆
2、服务器1验证通过,并将验证信息存到数据库,同时生成一个唯一标识符。
3、用户通过链接访问服务器2,并 GET 提交标识符
4、服务器2把标识符提交给服务器1的接口
5、服务器1查询标识符,并将结果通过接口输出
6、服务器2读取接口返回的数据验证
7、服务器2完成验证,生成自己的 SESSION 或 COOKIE
=====================================================
我建议你用这个方案,每次登陆标识符都是不一样的。如果同时登陆就会产生标识符错误而验证失败。你用 COOKIE 传递这个标识符也是可以的。。
如果你是同一个域下的两个子站。共享 COOKIE 是很容易的事情。。就不用这么费事了。。PHP 可以生成同一个父域的 COOKIE 。
可以找我细谈。在这里回复太慢了。QQ42696883
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询