欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP生成的session,可以在jsp页面获取吗?

程序员文章站 2024-01-25 11:59:40
...
我用PHP获取的数据库的一条记录存放到session中,在jsp的页面中获取不到session中的信息中的字段。
我不懂jsp,但是用PHP可以获取到session的信息。
是语言差异无法实现呢?还是我的代码出现错误?


回复讨论(解决方案)

是语言差异无法实现!

1、php 是通过 PHPSESSID 传递 sessionID
jsp 是通过 JSPSESSID 传递 sessionID
2、php 的 session 的内容保存于文件(也可在数据库)
jsp 的 session 的内容保存于内存(是否也可在数据库)

直接获取应该获取不到,可以通过其他方法实现,比如保存到文件、数据库等第3方地方,也可以直接通过ajax请求去拿,等等

是语言差异无法实现!

1、php 是通过 PHPSESSID 传递 sessionID
jsp 是通过 JSPSESSID 传递 sessionID
2、php 的 session 的内容保存于文件(也可在数据库)
jsp 的 session 的内容保存于内存(是否也可在数据库)


那有什么最简单的方法,实现两个文件之间的session共享吗?

直接获取应该获取不到,可以通过其他方法实现,比如保存到文件、数据库等第3方地方,也可以直接通过ajax请求去拿,等等


有没有办法可以实现PHP和jsp页面之间的session共享吗?

如果可能话,双方都把 session 存放到同一个数据表中

如果可能话,双方都把 session 存放到同一个数据表中


我存在session中的信息,本来就是从数据库中读取,我想过可以在jsp页面中访问数据库,可是这样的解决方法好吗?

什么是好呢?
你要的是数据共享,那总得找个载体吧?数据库当然是最佳的选择

什么是好呢?
你要的是数据共享,那总得找个载体吧?数据库当然是最佳的选择


嗯,只是PHP页面是我写的,jsp页面是另外的同事写的,看来他要改的地方比较多。
可以我在页面的跳转时候带上一个标识,然后他在jsp的最开始的地方get我的标识,然后查询数据库并把对应消息存入session。因为他后面的很多操作都是使用session里面的信息,这样实现起来 是不是比较简单呢?

嗯,你把难题都丢给你的同事了
他不但要查询你的数据库,还要自己编程解码 php 的 session 数据

嗯,你把难题都丢给你的同事了
他不但要查询你的数据库,还要自己编程解码 php 的 session 数据


我也想我这方面多做点,可是我想不到别的解决方法。他之后的页面都要使用session的信息的。

至少你应该提供原始的数据给对方吧?

jsp 程序是由你调用的?

至少你应该提供原始的数据给对方吧?

jsp 程序是由你调用的?


对的,PHP页面跳转到jsp页面,之前打算把一些信息放到session里面。
后来才发现不可行。所以我想在跳转的时候加上个标识。

curl 或 file_get_contents 直接 POST 传值调用就是了,何必绕个圈

curl 或 file_get_contents 直接 POST 传值调用就是了,何必绕个圈


值传值的同时要进行页面跳转的,可以把信息存在cookie里面吗?

这里是 php 在服务端请求,不经过浏览器,不存在页面跳转
至于如何处理 jsp 返回的页面,就是你自己的事情了

这里是 php 在服务端请求,不经过浏览器,不存在页面跳转
至于如何处理 jsp 返回的页面,就是你自己的事情了


谢谢