给招行做的一个小游戏,有个需求是:分数第一次达到500会弹出一个提示框。之前没有使用过cookie,在网上搜了些资料,最终还是顺利实现了功能。在这里贴一下代码。
<%!
//初始化cookie
public String getCookie(HttpServletRequest request, String cookieName) {
Cookie[] cookies = request.getCookies();
if (cookies != null && cookies.length > 0) {
for (Cookie cookie : cookies) {
if (cookie.getName().equals(cookieName)) {
return cookie.getValue();
}
}
}
return "";
}
public void setCookie(HttpServletResponse response, String cookieName, String cookieValue, int maxAge) {
Cookie cookie = new Cookie(cookieName, cookieValue);
cookie.setMaxAge(maxAge >= 0 ? maxAge : -1);
response.addCookie(cookie);
}
%>
<%
//获取当前用户的总分
int totalScore = player.getScore(self.getOpenid());
try {
// 获取分数
totalScore = Integer.parseInt(request.getParameter("totalScore"));
} catch (Exception e) {
}
boolean showDialog = false;
if (totalScore >= 500) {
String isDialogShowed = getCookie(request, "isDialogShowed");
if (!"true".equals(isDialogShowed)) {
// 第一次达到500分
setCookie(response, "isDialogShowed", "true", 86400);
showDialog=true;
}
}
%>