在mojolicious响应中设置cookie

时间:2012-03-07 21:06:46

标签: perl mojolicious

如何在mojolicious响应中设置cookie,然后从请求中读取它。我尝试了不同的方法,但没有一个在响应对象上设置cookie。

试过这些方法

$self->res->cookies({name => 'foo', value => 'bar'});
$self->res->headers->set_cookie('foo=bar');
$self->res->headers->cookie('foo=bar');

plz,help !!

感谢。

1 个答案:

答案 0 :(得分:14)

您可以直接从控制器使用快捷方式:

# 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