Javascript 如何在浏览器关闭前保留用户名?

Javascript 如何在浏览器关闭前保留用户名?,javascript,c#,Javascript,C#,我正在使用C和javaScript开发一个web应用程序。我需要在浏览器中保存用户数据,以便用户登录后不必在同一浏览器中的新选项卡上登录。但如果他关闭浏览器,数据应该被清除 我在网上搜索,找不到解决方案 我尝试使用document.cookie,但当浏览器关闭时,它们不会被清除。localStorage也存在同样的问题 我尝试了sessionStorage,但当选项卡关闭时,它被清除 我也试过了 $(window).on('unload', function (e) { ----

我正在使用
C
javaScript
开发一个web应用程序。我需要在浏览器中保存用户数据,以便用户登录后不必在同一浏览器中的新选项卡上登录。但如果他关闭浏览器,数据应该被清除

我在网上搜索,找不到解决方案

我尝试使用
document.cookie
,但当浏览器关闭时,它们不会被清除。
localStorage
也存在同样的问题

我尝试了
sessionStorage
,但当选项卡关闭时,它被清除

我也试过了

 $(window).on('unload', function (e) {
      ----
    });
但是
unload
功能在重新加载或制表符关闭时清除数据

谁能给我一个解决办法吗

编辑[已解决]

问题在于我的
Cookie
创建

我创建了一个
持久cookie
,而不是
会话cookie
。当我从cookie中删除
expires
时,问题就解决了。现在,当浏览器关闭时,它处于清除状态,即使选项卡关闭,也会保留用户数据

谢谢大家的帮助。

服务器端: 如果要在页面中保持值,请使用c#中的viewsate。移到下一页意味着使用C#会话

客户端: 如果要在客户端维护值,请使用document.cookies或sessionstroage、localstorage。

服务器端: 如果要在页面中保持值,请使用c#中的viewsate。移到下一页意味着使用C#会话

客户端:
如果要在客户端维护值,请使用document.cookies或sessionstroage、localstorage。

问题在于我的Cookie创建

我创建了一个持久cookie,而不是会话cookie。当我从cookie中删除expires时,问题就解决了。现在,当浏览器关闭时,它处于清除状态,即使选项卡关闭,也会保留用户数据


谢谢大家的帮助。

问题在于我的Cookie创建

我创建了一个持久cookie,而不是会话cookie。当我从cookie中删除expires时,问题就解决了。现在,当浏览器关闭时,它处于清除状态,即使选项卡关闭,也会保留用户数据


谢谢大家的帮助。

根据用户代理(=浏览器)的不同,选项卡可能会在单独的进程中运行。您不能保证选项卡在概念上与浏览器窗口不同。这是您在web编程中应该习惯的:您对客户端的控制有限。如果操作正确,会话cookie将在浏览器关闭时删除。您可以使用
文档创建Cookie。如果Cookie
是持久的或会话的,则很可能您正在创建持久的Cookie。通常,我不会从前端执行此操作。在服务器响应头中,您告诉客户端创建会话cookie。Look@jintopullolickal我已经可以告诉你,你在这里的实现可能是一个安全漏洞,可能会导致bug和其他形式的安全漏洞(也就是不让端点执行授权检查)。在请求-响应场景中,整个身份验证概念是客户端和服务器之间的一种机制。如果您的服务器不考虑用户身份验证,但您的客户端框架确实如此,这是一个问题。祝你好运。根据用户代理(=浏览器)的不同,选项卡可能在单独的进程中运行。您不能保证选项卡在概念上与浏览器窗口不同。这是您在web编程中应该习惯的:您对客户端的控制有限。如果操作正确,会话cookie将在浏览器关闭时删除。您可以使用
文档创建Cookie。如果Cookie
是持久的或会话的,则很可能您正在创建持久的Cookie。通常,我不会从前端执行此操作。在服务器响应头中,您告诉客户端创建会话cookie。Look@jintopullolickal我已经可以告诉你,你在这里的实现可能是一个安全漏洞,可能会导致bug和其他形式的安全漏洞(也就是不让端点执行授权检查)。在请求-响应场景中,整个身份验证概念是客户端和服务器之间的一种机制。如果您的服务器不考虑用户身份验证,但您的客户端框架确实如此,这是一个问题。祝你好运。