首页 > 解决方案 > 如何使用 PHP 和 Vue.js 管理会话?

问题描述

我目前的情况:

我的后端是用 PHP (codeigniter) 编写的,并从标准端口 80 上的 Apache 服务器运行。
使用 Vuejs (VUE CLI) 编写的前端从npm run serve端口 8080 中的命令运行。

我的问题:

当我登录到我的应用程序时,我的前端会调用我的 API 端点:http://localhost/auth/login
如果身份验证数据正确,我会使用 Codeigniter 开始一个会话,如下所示:

 $sessionData = array(
  'username' => $userName,
  'id' => $userId,
  'email' => $userEmail,
  'role' => $userRole,
);
$this->session->set_userdata($sessionData);

之后,我调用以在另一个 API 端点检索会话数据:http://localhost/get/session

这就是问题发生的地方:调用是从 http://localhost:8080 (前端服务器)进行的,并且此路径上没有打开会话...... PHP 最终打开了 localhost:80 的会话,这样我就可以'不要在我的前端恢复会话数据。有人可以建议我解决这个问题吗?我已经考虑过以不同的方式管理我的会话,但我不知道这是否是个好主意......

标签: phpvue.jscodeignitersession

解决方案


推荐阅读