Kohana 会话和文件不在框架下

发布于 2024-11-16 15:57:59 字数 431 浏览 1 评论 0原文

我正在开发一个使用 Kohana 框架的网站。到目前为止,我已经很好地介入并接管了这个项目。今天,我正在实现一些需要使用会话变量的第三方功能。我可以设置会话变量并在使用控制器提供服务的页面上很好地使用它,但如果我进行 ajax 调用或在本例中调用第 3 方页面,则会话数据对我不可用。

我无法弄清楚这一点。我已经尝试了 Kohana 论坛上的一些方法,但似乎没有任何效果。

视觉示例:

html
 html/application
  controller files
ajax.php
third-party.php

如果我调用 ajax.php,我无法访问我在“kohana”页面中设置的会话数据。

我的 system/config/session.php 文件使用“cookie”作为驱动程序。过期和重新生成设置为 0。

有什么想法吗?

I'm working on a site that is using the Kohana framework. So far I've been fine jumping in and taking over the project. Today I'm implementing a few 3rd-party features that need to use a session variable. I can set the session variable and use it fine on pages that are using controllers to serve them up, but if I make ajax calls or in this instance calls to the 3rd party page, the session data is not available to me.

I cannot figure this one out. I've tried a few things from the Kohana forums, but nothing seems to work.

Visual example:

html
 html/application
  controller files
ajax.php
third-party.php

If I call up ajax.php I cannot access the session data that I am setting inside "kohana" pages.

my system/config/session.php file is using 'cookie' as the driver. Expiration and Regenerate are set to 0.

Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

李不 2024-11-23 15:57:59

那是因为您正在使用 cookie 会话驱动程序。如果您使用“本机”驱动程序(使用内部 php 会话),您可能能够获得访问权限。

正如上面所问的,是否有某种原因您没有在 Kohana 中构建 ajax.php ?那会为你省去很多麻烦。

另一方面,可以从外部 ajax.php 中解密会话(我不建议这样做,但为了将 kohana 会话数据传递到在子域上运行的 WordPress 安装,必须这样做)。

That's because you're using the cookie session driver. You'd probably be able to get access if you were using the 'native' driver, which uses the internal php session.

As asked above, is there some reason you're not building the ajax.php within Kohana? That would save you a lot of trouble.

On the other hand, it's possible to decrypt the session from within your external ajax.php (which I wouldn't recommend, but have had to do in order to get the kohana session data passed to a WordPress installation running on a subdomain).

那小子欠揍 2024-11-23 15:57:59

根据您所说的会话配置,我认为您正在使用 Kohana 2.x。

Kohana 2 会清除 $_GLOBALS。因此,您在访问本机 $_POST$_COOKIE$_SESSION$_GET时可能会遇到问题$_GLOBALS$_REQUEST 数组。

我建议使用会话库的本机驱动程序,但我强烈建议迁移到 Kohana 3.x。

From what you say about the session configuration I think you are using Kohana 2.x.

And Kohana 2 clears the $_GLOBALS. So you might have problems accessing native $_POST, $_COOKIE, $_SESSION, $_GET, $_GLOBALS and $_REQUEST arrays.

I recommend using the native driver for the session library, but I highly recommend even more migrating to Kohana 3.x.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文