在控制器中,什么时候应该使用@CookieValue?
仅当您确定cookie将存在时?
我有这个控制器:
@Controller
@RequestMapping("my")
public class MyController {
@RequestMapping("")
public ModelAndView index(@CookieValue("myCookie") String cookie,
Map<String, Object> model){
log.info("My cookie {}", cookie);
(...)
}当设置cookie时,调用该方法是没有问题的,但是当没有设置cookie时,该方法不会被调用,并且我认为我不能让控制器中的另一个方法映射到相同的路径。
(我的Spring版本: 3.2.3)
发布于 2013-10-10 04:52:54
由Kal在评论中回答,我将答案标记为已回答/已关闭。
@CookieValue有一个必需的参数,默认情况下设置为true。
所以,
@CookieValue(value="myCookie", required=false)解决了我的问题。
发布于 2015-07-26 16:09:07
我想你也可以使用属性"defaultValue“。它看起来像这样:
@CookieValue(value="name", defaultValue="someValue")发布于 2017-06-30 18:37:20
在我看来:
cookie default --逻辑上对检查隐藏以下语句,不管它是否有cookie,因为它总是有一个(默认或没有)
cookie required --检查是否有cookie并执行相应操作的逻辑需求。
https://stackoverflow.com/questions/19281821
复制相似问题