我创建cookie的功能是否正确?如何在程序开头删除cookie?有简单的编码吗?
function createCookie(name,value,days)
Run Code Online (Sandbox Code Playgroud)
function setCookie(c_name,value,1) {
document.cookie = c_name + "=" +escape(value);
}
setCookie('cookie_name',mac);
function eraseCookie(c_name) {
createCookie(cookie_name,"",-1);
}
Run Code Online (Sandbox Code Playgroud) 是否有任何跨浏览器的JavaScript/jQuery代码来检测浏览器或浏览器选项卡是否正在关闭,而不是由于链接被点击?
我正在尝试在javascript中设置会话cookie,如下所示:
document.cookie = 'name=alex; path=/'
Run Code Online (Sandbox Code Playgroud)
但即使我退出浏览器并再次启动浏览器,Chrome也不会将其删除.
我检查了Firefox和Opera,两者都按预期工作 - 他们在浏览器退出时删除了会话cookie.
Chrome是否只是忽略过期规则?
我检查了多个操作系统,发现会话cookie在Windows XP和Ubuntu中的Chrome上被删除,但在Mac OSX Lion中没有.
在其中一个ASP.NET MVC应用程序中,如果用户关闭打开应用程序的浏览器选项卡,我们会自动注销用户.
我们在进行身份验证时使用以下代码.
FormsAuthentication.SetAuthCookie(userName,false)
截至目前,如果我们关闭浏览器窗口并重新启动它,则会要求用户再次进行身份验证.但是,如果用户关闭标签并尝试访问任何网站网址,我们都会要求用户再次进行身份验证.
我的要求有点复杂.用户使用Web浏览器访问数据库,如果用户关闭活动页面而不是注销会话,则访问数据库 - 该会话需要自动注销.有人可以指导我如何做到这一点?我使用jquery - 在母版页中.
onbeforeunload - 我收到消息离开页面或留在此页面.即使我在登录时收到此消息,也查看主页.
我正在制作一个新的(空模板)ASP.NET MVC 5应用程序,我无法注销这个应用程序.我的注销行动:
public ActionResult LogOff()
{
if (User.Identity.IsAuthenticated)
{
//break here
}
try
{
AuthenticationManager.SignOut();
if (User.Identity.IsAuthenticated || Request.IsAuthenticated)
{
//break here;
}
}
return RedirectToAction("Login", "Account");
}
Run Code Online (Sandbox Code Playgroud)
启动课程:
public partial class Startup
{
public void ConfigureAuth(IAppBuilder app)
{
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
LoginPath = new PathString("/Account/Login")
});
app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);
}
}
Run Code Online (Sandbox Code Playgroud)
应用背景:
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("DefaultConnection", false)
{
}
}
Run Code Online (Sandbox Code Playgroud)
连接字符串:
<connectionStrings>
<add name="DefaultConnection" connectionString="Server=.;Database=DataTest;Trusted_Connection=True;" providerName="System.Data.SqlClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)
操作LogOff()执行没有问题,并将我重定向到"登录"操作,但我仍然登录.它有什么问题?
javascript ×4
asp.net ×2
asp.net-mvc ×2
cookies ×2
.net ×1
c# ×1
identity ×1
jquery ×1
session ×1