Session Internet Explorer 11使用Ajax在经典ASP上延迟会话

Session Internet Explorer 11使用Ajax在经典ASP上延迟会话,session,asp-classic,internet-explorer-11,session-variables,Session,Asp Classic,Internet Explorer 11,Session Variables,测试在Edge、Firefox和Chrome中正常工作的代码 基本脚本是记录花在特定文章上的时间。 当页面加载时,一个会话变量设置为页面加载的日期时间,另一个会话变量设置为文章ID。在同一页面上,有一个javascript计时器,每60秒向查看会话变量的页面发出一次XHR请求,并在脚本运行时每满一分钟提交到数据库 在Internet explorer 11中,如果浏览到文档,则会设置会话并可以在页面上调用该会话,但是当调用XHR请求时,会话变量显然为空 但是,如果浏览到其他文档,则会继续显示正确

测试在Edge、Firefox和Chrome中正常工作的代码

基本脚本是记录花在特定文章上的时间。 当页面加载时,一个会话变量设置为页面加载的日期时间,另一个会话变量设置为文章ID。在同一页面上,有一个javascript计时器,每60秒向查看会话变量的页面发出一次XHR请求,并在脚本运行时每满一分钟提交到数据库

在Internet explorer 11中,如果浏览到文档,则会设置会话并可以在页面上调用该会话,但是当调用XHR请求时,会话变量显然为空

但是,如果浏览到其他文档,则会继续显示正确的会话变量

只有在第一篇文章访问时,会话变量才不会传递到XHR请求

我已尝试检查SessionID,在所有页面/请求中都显示相同的SessionID

我已经尝试在global.asa中预先设置会话变量,以确保变量容器在会话开始时就在那里,并且没有行为上的差异

我不知道该怎么办,因为这似乎是IE11的问题,但我知道99%的用户已经发布了笔记本电脑,并将IE11作为他们的默认浏览器


任何帮助或指针都是有价值的。

在我的案例中,我研究了控制台,发现传统的js库(如bootstrap)正在调用不存在的项。因为我有自定义的错误页面,这些页面运行相同的代码来关闭计时器(并重置会话cookie),所以我要查找的会话变量在后台的404页面上被删除


此项现已解决。

可能是CORS问题,只有IE标志,控制台上是否记录了任何警告?另外,发布你的JS也会很有帮助。你用F12检查过IE中的控制台是否有错误吗?请提供,以便我们更好地了解这个问题,并在我们双方进行测试。谢谢你的理解,谢谢你的帮助!我忽略了控制台中的一些非常重要的信息,在控制台中,各种javascript都希望从服务器加载信息,而在站点中的第一次加载时,服务器并不在那里。因此,这些找不到的文件将被提供一个页面,该页面将关闭计时器并重置会话变量-这仅在第一次加载时发生,因为这些文件之后不会再次检查。现在来看看如何删除我正在使用的遗留引导代码所嵌入的丢失的.less文件的所有引用!很高兴你找到了原因,别忘了回来看看。