您的位置:首页 > 移动开发 > Android开发

android 手机注册发送短信失败例子。

2014-05-08 12:01 579 查看
session 和cookie 跨域存储验证码失败,悲剧。

//HttpClientUtil.addCookie(response, phoneId, format.format(new Date()) +"," + validateCode, 1 * 24 * 60 * 60);
//Cookie phoneCook = HttpClientUtil.getCookieByName(request, phoneId);
//添加手机号码注册验证功能
//System.out.println("eeeeeeeeee" + phoneCook.getValue());


/*Cookie phoneCook = HttpClientUtil.getCookieByName(request, emailOrPhone);
//添加手机号码注册验证功能
System.out.println("eeeeeeeeee" + phoneCook.getValue());
String myPhoneVc = String.valueOf(captcha); // 手机验证码
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
if (phoneCook != null && !StringUtil.isNull(myPhoneVc)) {
String str[] = phoneCook.getValue().split(",");
Date beginTime = format.parse(str[0]);
long minus = new Date().getTime()- beginTime.getTime();
if (minus / 1000 / 60 < CommonConstant.MEMBER_PHONE_DEAD_TIME) {// 五分钟失效
if (myPhoneVc != null && myPhoneVc.equals(str[1])) {
phoneCook.setMaxAge(0);//清除cook值
mao.setMemberPhone(emailOrPhone);
} else {
result = "phoneValidateNoEquels"; // 与发送的验证码不一致
out.print(result);
return null;
}
} else {
result = "phoneValidateNo"; // 失效
out.print(result);
return null;
}
} else {
result = "phoneValidateNo"; // 失效
out.print(result);
return null;
}*/


封装方法

/**
* 设置cookie
* @param response
* @param name  cookie名字
* @param value cookie值
* @param maxAge cookie生命周期  以秒为单位
*/
public static void addCookie(HttpServletResponse response,String name,String value,int maxAge){
Cookie cookie = new Cookie(name,value);
cookie.setPath("/");
cookie.setDomain(".localhost");// 这里可以替换成自己的域名如.vipshequ.com
if(maxAge>0)  cookie.setMaxAge(maxAge);
response.addCookie(cookie);
System.out.println("eeeeeeeeeeee" + name);
System.out.println("ffffffffff" + value);
}
/**
* 根据名字获取cookie
* @param request
* @param name cookie名字
* @return
*/
public static Cookie getCookieByName(HttpServletRequest request,String name){
Map<String,Cookie> cookieMap = ReadCookieMap(request);
if(cookieMap.containsKey(name)){
Cookie cookie = (Cookie)cookieMap.get(name);
return cookie;
}else{
return null;
}
}
/**
* 将cookie封装到Map里面
* @param request
* @return
*/
private static Map<String,Cookie> ReadCookieMap(HttpServletRequest request){
Map<String,Cookie> cookieMap = new HashMap<String,Cookie>();
System.out.println("22222" +request);
System.out.println("33333333333" +request.getCookies());
Cookie[] cookies = request.getCookies();
if(null!=cookies){
System.out.println("dddddddddddd");
for(Cookie cookie : cookies){
System.out.println("fffffffff");
cookieMap.put(cookie.getName(), cookie);
}
}
return cookieMap;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: