繁体   English   中英

使用选项 js 设置 cookie

[英]Set cookie with option js

是否可以在 js 中使用选项设置 cookie,例如在 c# 我有 CookieOptions

var options = new CookieOptions
{
    IsEssential = true
};

我知道在 js 中我可以这样设置 cookie: document.cookie = cookieString但是如何设置选项呢?

概括

我不知道是否有任何其他 js 方法可以像 C# 的选项一样使用。

这两个js函数我之前写的
可用于设置 cookie 的setCookiegetCookieValue

var common = common || {}
common.cookieManager = common.cookieManager || {};
common.cookieManager.getCookieValue = (name) => (
  document.cookie.match('(^|;)\\s*' + name + '\\s*=\\s*([^;]+)')?.pop() || ''
)

/**
 * set cookie with name value and life time
 * @param {string} name cookie name
 * @param {string} value cookie value
 * @param {number} expireTime s
 */
common.cookieManager.setCookie = async (name, value, expireTime = 0) => {
  const expires = (new Date(Date.now() + expireTime * 1000)).toUTCString();
  document.cookie = `${name}=${value}; expires=` + expires + ";path=/;"
}

可以根据Document.cookie自行添加参数修改setCookie function


但是如果您使用的是 .NET MVC 框架,我认为最好在后端设置 cookie
在您的 .NET WebApi Controller 中,应该有一个Response道具可以使用

使用Controller.Response通过CookieOptions class设置 cookie

示例代码:

Response.Cookies.Append("key", "value", new CookieOptions() { Expires = DateTime.Now.AddMinutes(30), IsEssential = true });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM