Difference between revisions of "Java code for verification class"

From MyWiki
Jump to: navigation, search
(Created page with "<source lang="java"> import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.StringReader;...")
 
(Blanked the page)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
<source lang="java">
 
import java.io.BufferedReader;
 
import java.io.DataOutputStream;
 
import java.io.IOException;
 
import java.io.InputStreamReader;
 
import java.io.StringReader;
 
import java.net.URL;
 
  
import javax.json.Json;
 
import javax.json.JsonObject;
 
import javax.json.JsonReader;
 
import javax.net.ssl.HttpsURLConnection;
 
 
public class VerifyRecaptcha {
 
 
    public static final String url = "https://www.google.com/recaptcha/api/siteverify";
 
    public static final String secret = "6LfUpyQTAAAAAHsXPxomPWvid-mAnyq-c4GCN5gO";
 
    private final static String USER_AGENT = "Mozilla/5.0";
 
 
    public static boolean verify(String gRecaptchaResponse) throws IOException {
 
        if (gRecaptchaResponse == null || "".equals(gRecaptchaResponse)) {
 
            return false;
 
        }
 
 
        try{
 
        URL obj = new URL(url);
 
        HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();
 
 
        // add reuqest header
 
        con.setRequestMethod("POST");
 
        con.setRequestProperty("User-Agent", USER_AGENT);
 
        con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
 
 
        String postParams = "secret=" + secret + "&response="
 
                + gRecaptchaResponse;
 
 
        // Send post request
 
        con.setDoOutput(true);
 
        DataOutputStream wr = new DataOutputStream(con.getOutputStream());
 
        wr.writeBytes(postParams);
 
        wr.flush();
 
        wr.close();
 
 
        int responseCode = con.getResponseCode();
 
        System.out.println("\nSending 'POST' request to URL : " + url);
 
        System.out.println("Post parameters : " + postParams);
 
        System.out.println("Response Code : " + responseCode);
 
 
        BufferedReader in = new BufferedReader(new InputStreamReader(
 
                con.getInputStream()));
 
        String inputLine;
 
        StringBuffer response = new StringBuffer();
 
 
        while ((inputLine = in.readLine()) != null) {
 
            response.append(inputLine);
 
        }
 
        in.close();
 
 
        // print result
 
        System.out.println(response.toString());
 
 
        //parse JSON response and return 'success' value
 
        JsonReader jsonReader = Json.createReader(new StringReader(response.toString()));
 
        JsonObject jsonObject = jsonReader.readObject();
 
        jsonReader.close();
 
 
        return jsonObject.getBoolean("success");
 
        }catch(Exception e){
 
            e.printStackTrace();
 
            return false;
 
        }
 
    }
 
}
 
 
</source>
 

Latest revision as of 14:08, 27 March 2022