receive.jsp

来自「陕西电信sp客户端」· JSP 代码 · 共 65 行

JSP
65
字号
<%@page contentType="text/html; charset=GBK" %>
<%@page import="com.onewaveinc.portalman.webpro.*"%>
<%@page import="com.onewaveinc.portalman.webpro.entity.*"%>
<%@ page import="java.util.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.security.*"%>
<%@ page import="java.net.URLEncoder"%>
<%!
	public static String byte2HEX(byte b) {
		return (""+"0123456789ABCDEF".charAt(0xf&b>>4)+"0123456789ABCDEF".charAt(b&0xF));
	}

	public static byte stringHEX2bytes(String str) {
		return (byte) ("0123456789ABCDEF".indexOf(str.substring(0,1))*16 + "0123456789ABCDEF".indexOf(str.substring(1)));
	}
	public static String md5bytes2string(byte[] bytes){
		String result = "";
		for(int i=0; i<bytes.length; i++){
			result += byte2HEX(bytes[i]);
		}
		return result;
	}
	public static byte[] md5string2bytes(String str){
		byte[] b = new byte[str.length()/2];
		for(int i=0; i<b.length; i++){
			String s = str.substring(i*2,i*2+2);
			b[i] = stringHEX2bytes(s);
		}
		return b;
	}
	public boolean checkValidate(String vnetloginname,String token,String verifycode){
		try{
			String seed = token + vnetloginname + "vnetvalidate";
			MessageDigest md = MessageDigest.getInstance("MD5");
			String mdresult = md5bytes2string(md.digest(seed.getBytes()));
			return mdresult.equalsIgnoreCase(verifycode);
		}catch(Exception e){
			return false;
		}
	}
%>
<%
	//取传回的参数
	String result = request.getParameter("result");
	String token = request.getParameter("token");
	String vnetloginname = request.getParameter("vnetloginname");
	String verifycode = request.getParameter("verifycode");
	if(vnetloginname == null || token ==null || result==null || verifycode==null){
		out.println("非法请求,请退出重试!");
		return;
	}
	//检查校验码是否正确,如果不正确,说明是用户修改了跳回时的参数值
	if(!checkValidate(vnetloginname,token,verifycode)){
		out.println("发现返回参数被修改,校验码不正确!");
		return;
	}
	session.setAttribute("sessionVnetLoginName",vnetloginname);
	session.setAttribute("sessionAuthorizeResult",result);
 %>
 <SCRIPT LANGUAGE="javascript">
	 window.opener.location='account.jsp';
	 window.close();
</SCRIPT>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?