打开一个新窗口创建一个新会话

2023-05-14前端开发问题
18

本文介绍了打开一个新窗口创建一个新会话的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

限时送ChatGPT账号..

我们正在将基于 Web 的软件从带有 Internet Explorer 6 的 Windows XP 升级到带有 Internet Explorer 9 的 Windows 7.

We are upgrading a web-based software from Windows XP with Internet Explorer 6 to Windows 7 with Internet Explorer 9.

此外,Webbrowser 对象在 WPF 应用程序中使用.

Furthermore, a webbrowser object is used inside a WPF application.

我们现在有一个奇怪的行为,当打开一个带有 url 的窗口时(使用类似 window.open(url) 的指令),ASP 会话丢失"并且新窗口与一个新的从头开始的会话一起工作.

We now have a strange behavior, when opening a window with a url (with an instruction like window.open(url)), the ASP session is "lost" and the new window works with a new from scratch session.

我通过避免打开无用的窗口解决了这个问题,而是修改了当前窗口的位置.但我想了解为什么会出现这种行为!

I solved this issue by avoiding useless windows opening and instead, I modify the location of the current window. But I would like to understand why this behavior !

你有什么线索吗?

谢谢.

推荐答案

假设您的导航都转到同一个域,那么另一个原因可能是进程切换.从 IE8 开始,IEchrome"和 tab 内容被分成两个进程.进一步的IE可以为不同窗口和标签中的内容创建多个内容进程.

Assuming your navigation all go to the same domain then another cause for this could be the switching of processes. As of IE8 the IE "chrome" and tab content were seperated into two processes. Further IE can create multiple content processes for content in different windows and tabs.

如果您的应用程序托管了一个 Web 浏览器控件,该控件随后会启动一个完整的 IE 窗口,那么您的新 URL 可能是由另一个进程 (iexpore.exe) 而非您的应用程序进程请求的.结果,请求无法访问会话 cookie,因此会话显示为丢失".

If your app is hosting a webbrowser control which then launches a full IE window, the chances are that your new URL is being requested by another process (iexpore.exe) not your apps process. As a result the request does not have access to session cookies hence the session appears "lost".

(值得注意的是,同一进程树中的多个 iexplore.exe 进程实例具有相互共享会话 cookie 的方法.

(Its worth noting that the multiple iexplore.exe process instances in the same process tree have a means of sharing session cookies with each other).

这篇关于打开一个新窗口创建一个新会话的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

js删除数组中指定元素的5种方法
在JavaScript中,我们有多种方法可以删除数组中的指定元素。以下给出了5种常见的方法并提供了相应的代码示例: 1.使用splice()方法: let array = [0, 1, 2, 3, 4, 5];let index = array.indexOf(2);if (index -1) { array.splice(index, 1);}// array = [0,...
2024-11-22 前端开发问题
182

JavaScript小数运算出现多位的解决办法
在开发JS过程中,会经常遇到两个小数相运算的情况,但是运算结果却与预期不同,调试一下发现计算结果竟然有那么长一串尾巴。如下图所示: 产生原因: JavaScript对小数运算会先转成二进制,运算完毕再转回十进制,过程中会有丢失,不过不是所有的小数间运算会...
2024-10-18 前端开发问题
301

JavaScript(js)文件字符串中丢失"\"斜线的解决方法
问题描述: 在javascript中引用js代码,然后导致反斜杠丢失,发现字符串中的所有\信息丢失。比如在js中引用input type=text onkeyup=value=value.replace(/[^\d]/g,) ,结果导致正则表达式中的\丢失。 问题原因: 该字符串含有\,javascript对字符串进行了转...
2024-10-17 前端开发问题
437

layui中table列表 增加属性 edit="date",不生效怎么办?
如果你想在 layui 的 table 列表中增加 edit=date 属性但不生效,可能是以下问题导致的: 1. 缺少日期组件的初始化 如果想在表格中使用日期组件,需要在页面中引入 layui 的日期组件,并初始化: script type="text/javascript" src="/layui/layui.js"/scrip...
2024-06-11 前端开发问题
455

Rails/Javascript:如何将 rails 变量注入(非常)简单的 javascript
Rails/Javascript: How to inject rails variables into (very) simple javascript(Rails/Javascript:如何将 rails 变量注入(非常)简单的 javascript)...
2024-04-20 前端开发问题
5

CoffeeScript 总是以匿名函数返回
CoffeeScript always returns in anonymous function(CoffeeScript 总是以匿名函数返回)...
2024-04-20 前端开发问题
13