引用另一个问题: 有没有办法在 Flutter Web 中创建和读取 cookie?
我尝试将域实现到与以下类似的函数中: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie
因此具有以下功能:
document.cookie = 'cookie_name=$cookie_value; domain=$mydomain';
但是,当我运行这个函数时,它没有正确设置cookie。没有域名后缀,它可以工作,但我要求域名是另一个路径。
我注意到由于跨域的安全原因它不起作用。但是,我希望它成为我的 Web DNS 的子域,它仍然位于同一域中,只是不同的子域,例如:
My website: website.samedomain.com
Setting the cookie: *.session.samedomain.com
我还尝试使用 flutter_inappwebview 包,该包在使用
CookieManager
实例设置 cookie 时适用于 Android/IOS,如下例所示,但未在 Flutter Web 上设置 cookie。
CookieManager cookieManager = CookieManager.instance();
await cookieManager.setCookie(
url: WebUri('http://$domain'), name: "cookie", value: value);
有什么办法可以解决这个问题吗?或者还有其他解决办法吗?
只需使用以下格式,
var mydomain = '.samedomain.com'; // it accepts both 'website' and 'session' cookies
document.cookie = 'cookie_name=$cookie_value; domain=$mydomain';
如果您使用来自服务器的cookie(例如node/express js),请使用以下
var session = {
name: "COOKIE_NAME",
cookie : {
domain: '.samedomain.com',
maxAge: 3600000,
httpOnly: true
},
secret: "SECRET_VALUE"
}