如何在 javascript 中删除和重置 cookie
How to delete and reset a cookie in javascript?
"fc_vid=visitor1089537543049; _gat=1; Email Id=; Password=; API={"access_token":"fca10765-e1b0-42bf-bc11-47d4e436533b","token_type":"bearer","refresh_token":"969b3993-983c-4308-8542-bc0b0cd861ac","expires_in":429373,"scope":"read write"}; pnctest=1; fc_g=%7B%22session_geo%22%3A%22%7B%5C%22locale%5C%22%3A%7B%5C%22country%5C%22%3A%5C%22us%5C%22%2C%5C%22lang%5C%22%3A%5C%22en%5C%22%7D%2C%5C%22current_session%5C%22%3A%7B%5C%22url%5C%22%3A%5C%22http%3A%2F%2Flocalhost%3A5567%2FHome%2FIndex%5C%22%7D%2C%5C%22browser%5C%22%3A%7B%5C%22browser%5C%22%3A%5C%22Chrome%5C%22%2C%5C%22version%5C%22%3A43%2C%5C%22os%5C%22%3A%5C%22Windows%5C%22%7D%2C%5C%22device%5C%22%3A%7B%5C%22is_tablet%5C%22%3Afalse%2C%5C%22is_phone%5C%22%3Afalse%2C%5C%22is_mobile%5C%22%3Afalse%7D%7D%22%7D; _ga=GA1.1.1692099365.1433096280"
我正在尝试删除 API cookie 并将其重置为新对象,但是当我这样做时,它会为我添加另一个 API cookie。
以下是我正在使用cookie的代码.js来自此链接
var dataPromise = get_api_token_refresh_token(refresh_token).done(handleData).fail(failHandler);
dataPromise.success(function (api_token) {
var something = docCookies.removeItem('API');
console.log(something);
docCookies.setItem("API", JSON.stringify(api_token));
});
在我的情况下发生了什么:
"API=%7B%22access_token%22%3A%22f7b87fc2-f2d5-43e8-a6d2-cc4a89da7a50%22%2C%22token_type%22%3A%22bearer%22%2C%22refresh_token%22%3A%223630934c-93c3-4497-abfb-9022428fce4c%22%2C%22expires_in%22%3A431999%2C%22scope%22%3A%22read%20write%22%7D; fc_vid=visitor1089537543049; _gat=1; Email Id=; Password=; API={"access_token":"fca10765-e1b0-42bf-bc11-47d4e436533b","token_type":"bearer","refresh_token":"969b3993-983c-4308-8542-bc0b0cd861ac","expires_in":429373,"scope":"read write"}; pnctest=1; fc_g=%7B%22session_geo%22%3A%22%7B%5C%22locale%5C%22%3A%7B%5C%22country%5C%22%3A%5C%22us%5C%22%2C%5C%22lang%5C%22%3A%5C%22en%5C%22%7D%2C%5C%22current_session%5C%22%3A%7B%5C%22url%5C%22%3A%5C%22http%3A%2F%2Flocalhost%3A5567%2FHome%2FIndex%5C%22%7D%2C%5C%22browser%5C%22%3A%7B%5C%22browser%5C%22%3A%5C%22Chrome%5C%22%2C%5C%22version%5C%22%3A43%2C%5C%22os%5C%22%3A%5C%22Windows%5C%22%7D%2C%5C%22device%5C%22%3A%7B%5C%22is_tablet%5C%22%3Afalse%2C%5C%22is_phone%5C%22%3Afalse%2C%5C%22is_mobile%5C%22%3Afalse%7D%7D%22%7D; _ga=GA1.1.1692099365.1433096280"
注意:饼干是在 asp.net mvc 代码中设置
的string token_string = "";
if (loginResult.User != null)
{
//make a call to the REST api authentication method and get accesstokens
token_string = OAuthHelper.getTokenFromAPIServer(api_auth_username, api_auth_password);
if (collection["Check"] != null)
{
check = collection["Check"];
if (check == "on")
{
FormsAuthentication.SetAuthCookie(loginResult.User.Name, true);
Response.Cookies[Constants.Cookies.USERNAME].Value = loginResult.User.Email;
Response.Cookies[Constants.Cookies.PWD].Value = savePassword;//loginResult.User.Password;
Response.Cookies[Constants.Cookies.USERNAME].Expires = DateTime.Now.AddDays(10);
Response.Cookies[Constants.Cookies.PWD].Expires = DateTime.Now.AddDays(10);
}
}
else
{
FormsAuthentication.SetAuthCookie(loginResult.User.Name, false);
Response.Cookies[Constants.Cookies.USERNAME].Value = string.Empty;
Response.Cookies[Constants.Cookies.PWD].Value = string.Empty;
}
Response.Cookies[Constants.Cookies.API].Value = token_string;
你可以使用 jquery.cookie 插件。它非常易于使用:
删除饼干:
// Returns true when cookie was successfully deleted, otherwise false
$.removeCookie('name'); // => true
$.removeCookie('nothing'); // => false
// Need to use the same attributes (path, domain) as what the cookie was written with
$.cookie('name', 'value', { path: '/' });
// This won't work!
$.removeCookie('name'); // => false
// This will work!
$.removeCookie('name', { path: '/' }); // => true
创建会话饼干:
$.cookie('name', 'value');
创建过期 Cookie,从那时起 7 天:
$.cookie('name', 'value', { expires: 7 });
创建在整个网站上有效的过期 Cookie:
$.cookie('name', 'value', { expires: 7, path: '/' });
读取饼干:
$.cookie('name'); // => "value"
$.cookie('nothing'); // => undefined
阅读所有可用的饼干:
$.cookie(); // => { "name": "value" }
相关文章:
- php httponly cookie在浏览器关闭时被删除
- Chrome内容脚本制作cookie;chrome重新启动时,cookie会被删除.如何使其稳定
- 如何从浏览器中获取cookie,从另一个应用程序中删除
- 添加/删除类并使用Cookie记住所选内容
- 使用javascript删除浏览器的所有Cookie
- jQuery在重置cookie之前未删除cookie
- javascript jquery批量删除cookie也有类似的名称
- 根据域名和名称的范围删除重复的JavaScript cookie
- 使用javascript从特定网站删除cookie不起作用
- 如何使用通过javascript或viceversa创建的coldfusion删除cookie
- 如何删除cookie错误注意:PHP上的未定义索引
- appMobi/phonegap设置/删除cookie点击操作需要2次才能工作
- 正在删除Javascript Synchronous中的cookie
- 在不刷新的情况下无法删除最近创建的cookie
- 清除firefox中的cookie也会删除localStorage吗
- 使用滑动存储cookie以删除jquery mobile
- 如何在 angularjs 中从 cookie 中删除和编辑对象
- 用于cookie删除和页面刷新的Beforeunload事件
- Javascript文件.Cookie删除“名称”;和“;value"
- 使用document.cookie删除firefox上不起作用的cookie.下面的