通过Cookie设置会话变量是个好主意吗?

时间:2019-06-19 12:50:10

标签: php session cookies

我公司编程的PWA中的

用户报告了一些不良的体验。他们离开应用程序后返回应用程序时,他们得到了一个空白页。通过发送给用户的URL中包含的令牌可以访问PWA。

该应用程序正在使用PHP和JQuery Mobile(哎呀)。

分析该程序后,似乎用户在一段时间后丢失了会话(不确定确切的次数)。

session_start();

if ( isset($_GET['token']) ) $_SESSION['token'] = $_GET['token'];

if ( ! isset($_SESSION['token']) ) exit('No tokens');

setcookie("token", $_SESSION['token'], time()+3600*24*30*5);

...

我的解决方案是在会话中使用cookie的令牌设置变量“令牌”:

session_start();

if ( isset($_GET['token']) ) {
    $_SESSION['token'] = $_GET['token'];
} else if ( isset($_COOKIE['token'])) {
    $_SESSION['token'] = $_COOKIE['token'];
}

if ( ! isset($_SESSION['token']) ) exit('No tokens');

setcookie("token", $_SESSION['token'], time()+3600*24*30*5);

...

我的解决方案正在工作,但是不确定是否有更好的方法来解决此问题。你能帮我一下吗?

0 个答案:

没有答案