我有一個頁面,其中有一個投票表單,用戶在表單中投票並在提交時會調用一個ajax請求在表單上顯示結果。表格上的Firefox會話/ cookie處理
投票後,將創建一個cookie,標記該用戶已投票投票。因此,下次用戶訪問該頁面時,如果找到該cookie,該用戶的投票將被禁用。
我的問題是當投票後使用firefox和用戶點擊url(轉到url並按回車),用戶仍然可以投票。直到用戶點擊刷新按鈕/按F5,用戶才被檢測爲投票。
這似乎只發生在Firefox和Chrome和IE上。
如果需要,我會很樂意提供更多信息。
我的創建和獲取cookie的方法是在我的java類中。
public static void addCookie (RequestContext context, String key, String value){
Cookie cookie = new Cookie(key, value);
cookie.setMaxAge(60 * 60 * 24 * 365);
context.getResponse().addCookie(cookie);
}
public static String getCookieValue(RequestContext context,
String cookieName, String defaultValue) {
String value;
CookieHash cookies = context.getCookies();
Cookie cookieValue = cookies.getCookie(cookieName);
if (cookieValue == null) {
value = defaultValue;
} else {
value = cookieValue.getValue();
}
return value;
}