我如何在 mojolicious 响应中设置 cookie,然后从请求中读取它。我尝试了不同的方法,但它们都没有在响应对象上设置 cookie。
尝试了这些方法
$self->res->cookies({name => 'foo', value => 'bar'});
$self->res->headers->set_cookie('foo=bar');
$self->res->headers->cookie('foo=bar');
请帮忙!!
谢谢。
我如何在 mojolicious 响应中设置 cookie,然后从请求中读取它。我尝试了不同的方法,但它们都没有在响应对象上设置 cookie。
尝试了这些方法
$self->res->cookies({name => 'foo', value => 'bar'});
$self->res->headers->set_cookie('foo=bar');
$self->res->headers->cookie('foo=bar');
请帮忙!!
谢谢。
您可以直接从控制器使用快捷方法:
# Set
$self->cookie(foo => 'bar');
# Get
$self->cookie('foo');
http://mojolicio.us/perldoc/Mojolicious/Controller#cookie
但是,如果您的意图只是存储一个值并在后续请求中检索它,则无需直接设置 cookie。Mojolicious 会话默认使用签名的 cookie,将处理 cookie 的复杂性,并验证客户端没有更改值。
# Set
$self->session(foo => 'bar');
# Get
$self->session('foo');
http://mojolicio.us/perldoc/Mojolicious/Controller#session
如果会话是您的最佳解决方案,请确保设置您的应用程序机密。另外,请查看: http: //mojocasts.com/e4#Session