问题标签 [session]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
177660 浏览

php - 会话的默认生命周期是多少?

如果我点击了一个调用 的页面,session_start()当我刷新页面时,我需要等待多长时间才能获得新的会话 ID?

0 投票
2 回答
147 浏览

asp.net - 在会话中找不到我刚刚放在那里的东西(但只是有时)

我们的服务器偶尔会出现一个奇怪的问题。它通常发生在我们的一个或多个 Web 应用程序升级时。调试问题让我走到了这一步……

在处理请求期间:

  • 在 ASP.NET 应用程序中,我们将一个对象放入会话中
  • 在稍后运行的代码(相同的请求)中,我们查找相同的会话值。它是空的!

所以看起来会话服务不起作用,对吧?该代码每天运行数百次,在开发环境或生产环境中从未失败,仅与升级 Web 服务器上的 Web 应用程序有关。

奇怪的是:我们也没有真正喜欢解决问题的适当方法。IIS 重置、ASP.NET 状态服务器停止/启动、web.config 编辑,甚至服务器重新启动都使用了所有 bin - 通常需要组合来修复它 + 加上大量的咒骂和拉扯。而且在大多数情况下,它不会立即修复,但可能在第三次 IIS 重置或其他任何情况两三分钟。(所以它可能毕竟不是修复它的原因。)

我要疯了。任何想法可能是什么问题?是微软的bug吗?

更多信息:

  • 我们在 .NET 2.0 下运行
  • 我们正在使用 ASP.NET 状态服务
  • 访问会话变量并返回 null 的代码位于 ASP.NET 应用程序引用的程序集中。它使用 HttpContect.Current 来获取会话
0 投票
4 回答
1390 浏览

asp.net - 分布式缓存/会话我应该转向哪里?

我目前正在研究分布式缓存解决方案。

如果钱不是问题,你会推荐哪个?

0 投票
1 回答
407 浏览

asp.net - ASP.NET 是在请求​​开始时从 SQL 服务器传输所有会话数据,还是仅在需要时传输?

我正在使用 ASP.NET,会话状态存储在 SQL Server 的进程之外。当页面请求开始时,用户会话的全部内容是从数据库中检索、反序列化并一举发送到 ASP.NET 进程,还是仅在需要时才将单个对象传输到 ASP.NET 进程?

基本上,我有一个在会话中存储一些大型对象的页面,我的应用程序很难确定何时可以处理数据。如果数据只是在使用时才从数据库中提取出来,那么就没有问题;如果针对每个页面请求将整个会话状态分块到 ASP.NET,我可能会遇到性能问题。

0 投票
5 回答
1355 浏览

python - Django、mod_python、apache 和古怪的会话

我在 Linux 机器上的 Apache 上通过 mod_python 运行 Django。我有一个自定义身份验证后端,以及需要对所有页面进行身份验证的中间件,静态内容除外。

我的问题是登录后,我仍然会时不时地随机进入登录屏幕。在我看来,每个 apache 进程都有自己的 python 进程,而 python 进程又拥有自己的内部结构。因此,只要我得到与登录相同的流程的服务,一切都很好而且花花公子。但是,如果我的请求由不同的 apache 进程提供服务,我将不再通过身份验证。

我检查了我用 FireBug 发送的 HTTP 标头,它们每次都是相同的,即。同样的饼干。

这是一个已知问题吗?是否有解决方法/修复?

编辑:我有一个显示大量生成图像的页面。有些关闭这些将不会显示。这是因为他们太落后于认证中间件,所以他们会随机放一个登录图像。但是,刷新此页面足够多次,它最终会起作用,这意味着所有进程都会识别我的会话。

0 投票
3 回答
3608 浏览

php - 在 PHP 中,如果不使用浏览器,将创建一个会话

我有一个依赖于请求之间的某些状态信息的 API。作为代码的一个简单的第一个版本,我只是使用 PHP 会话来存储状态信息,而不是更高级的东西(APC、memcache、DB)。在我在网络浏览器中进行的初始测试中,一切都运行良好。但是,当客户端尝试通过非浏览器方法(例如 Curl 或 wget)进行连接时,似乎没有保留状态信息。

只有在浏览器请求页面时才会创建 PHP 会话吗?我明确地使用 session_start() 开始会话,并使用 session_name() 预先命名它。

一个补充说明。我了解到我遇到的主要问题之一是我正在命名会话而不是通过 session_id($id); 设置会话 ID;我使用 session_name() 的目的是检索之前创建的同一会话,正确的方法是设置 session_id 而不是 session_name。

似乎会话信息将保留在服务器上,如下所述(谢谢)。但要保持这一点,您必须传递会话 id,或者,在我的情况下,任何其他可以唯一标识用户的 id。将此 id 用作 session_id,您的会话将按预期运行。

0 投票
5 回答
6440 浏览

php - 使用 MVC 和 OO PHP 会话的最佳方式

我一直在使用会话、MVC 设计和面向对象的 PHP。我应该在哪里保存或检索会话中的数据?我想从方法中检索它,所以我不必将数据传递给方法。最佳做法是什么?

0 投票
6 回答
92146 浏览

nhibernate - session.Merge 和 session.SaveOrUpdate 有什么区别?

我有时注意到我的父/子对象或多对多关系,我需要调用SaveOrUpdateor Merge。通常,当我需要调用时SaveOrUpdate,我调用的异常Merge与未首先保存的瞬态对象有关。

请说明两者的区别。

0 投票
5 回答
41910 浏览

php - PHP session side-effect warning with global variables as a source of data

I'm trying to host a PHP web site that was given to me. I see this warning:

Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0

What does this mean? How might I track down the source of this problem within the code?

0 投票
3 回答
28920 浏览

.net - System.Windows.Forms.WebBrowser 在同一窗口或具有同一会话的新窗口中打开链接

使用 .NET WebBrowser 控件时,如何使用相同的会话在新窗口中打开链接(即..不要在服务器上启动新的 ASP.NET 会话),或者如何捕获新窗口事件以在同一个 WebBrowser 控件中打开 URL?