Wiwiz Auth API Integration Sample (Java/JSP)
?Download WiwizAuthApiSample.jsp
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ page import="java.net.URL"%>
<%@ page import="java.net.URLConnection"%>
<%@ page import="java.net.URLEncoder"%>
<%
String userkey = "246DD22C084BB40E"; // replace with your own user key
//****************************************************
// Gets incoming parameters
//****************************************************
String pTokencode = request.getParameter("tokencode"); // incoming parameter "tokencode"
String pSrvurl = request.getParameter("srvurl"); // incoming parameter "srvurl"
/* Put them into session object if necessary */
if(pTokencode != null)
session.setAttribute("tokencode", pTokencode);
if(pSrvurl != null)
session.setAttribute("srvurl", pSrvurl);
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Language" content="zh">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<title> Wiwiz Auth API Usage Sample </title>
</head>
<body>
<form method="post">
User Name: <input type="text" name="username" />
<br>
Password: <input type="password" name="pswd" />
<br>
<input type="submit" name="login" value="Login" />
<%
if(request.getParameter("login") != null) { // if "Login" button is clicked
//****************************************************
// Step 1. Do your business. E.g. check user login ...
//****************************************************
boolean loginSuccess = false;
//
// Do something you need.
// e.g. verify the user
// ......
//
loginSuccess = true; // assume login successful
if(loginSuccess == false) {
out.println("Login Failed!"); // if user login failed, show an error message
} else {
//****************************************************
// Step 2. Do the pre-auth by calling Wiwiz Auth API
// IMPORTANT: Do this on your server side(ASP, C#, JSP/Servlet, PHP...),
// but DO NOT do this on your client side (HTML/Javascript)
//****************************************************
// parameter "action" : REQUIRED!
// set it to "1" to authenticate the user
// set it to "0" to block the user
String action = "1";
// parameter "tokencode": REQUIRED!
// set identical to the incoming parameter
String tokencode = (String) session.getAttribute("tokencode");
// parameter "srvurl": REQUIRED!
// set identical to the incoming parameter
String srvurl = (String) session.getAttribute("srvurl");
// parameter "endtime" : OPTIONAL
// Format: yyyy-mm-dd hh:MM:ss e.g. 2012-05-31 21:39:00
// set this parameter to set the time to close the user's Internet connection
// Note: the value must be url-encoded.
String endtime = URLEncoder.encode("2012-05-31 21:39:00", "utf-8");
// parameter "postauth" : OPTIONAL
// E.g. http://www.YourDomain.com
// set this parameter to redirect to a specified URL after authenticated.
// Note: the value should be url-encoded.
String postauth = "http://www.wiwiz.com";
String parameters =
"wiwiz_auth_api=1&ver=1.0"+ // parameter "wiwiz_auth_api" and "ver". Fixed value
"&tokencode="+ tokencode + // parameter "tokencode". See above
"&userkey="+ userkey + // parameter "userkey". Set your own User Key
"&action="+ action + // parameter "action". See above
"&endtime="+ endtime + // parameter "endtime". See above
"&postauth="+ postauth; // parameter "postauth". See above
URL u = new URL(srvurl); // use the value of incoming parameter "srvurl" as the requesting url
URLConnection uc = u.openConnection();
uc.setDoOutput(true);
uc.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
PrintWriter pw = new PrintWriter(uc.getOutputStream());
pw.println(parameters);
pw.close();
BufferedReader in = new BufferedReader(
new InputStreamReader(uc.getInputStream()));
String verifycode = in.readLine(); // gets "verifycode" - the verification result from Wiwiz server side
in.close();
String userstring = "username:" + request.getParameter("username"); // sets the Track Data (Optional), e.g. username
if(verifycode.startsWith("ERR")) {
// if there is an error, show error code
out.println("Error: "+ verifycode);
} else {
// OK, now. do Step 3.
//****************************************************
// Step 3. Complete the Authentication by calling Wiwiz Auth API
//****************************************************
String redirectUrl = srvurl + // use the value of incoming parameter "srvurl" as the redirection address
"?wiwiz_auth_api_login=1"+ // parameter "wiwiz_auth_api_login"
"&tokencode="+ tokencode + // parameter "tokencode", set identical to the incoming parameter
"&verifycode="+ verifycode+ // parameter "verifycode", the verification result from Wiwiz server side
"&userstring=" + userstring; // parameter "userstring" (Optional), the Track Data set by the user
response.sendRedirect(redirectUrl); // finally, do the redirection
}
}
}
%>
</form>
</body>
</html> |
