package br.ufpr.c3sl.webservices; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.URL; import java.net.URLConnection; import java.net.URLEncoder; import java.util.regex.Matcher; import java.util.regex.Pattern; import br.ufpr.c3sl.deepClone.ObjectByteArray; import com.sun.org.apache.xml.internal.security.utils.Base64; public class Main { public static void main(String[] args) { try { // Construct data String data = URLEncoder.encode("utf8", "UTF-8") + "=" + URLEncoder.encode("✓", "UTF-8"); data += "&" + URLEncoder.encode("authenticity_token", "UTF-8") + "=" + URLEncoder.encode("7UeGQR0qiZYdQEvRsY1ngqfpRrRs1HRbuqNLGpEDiv0=", "UTF-8"); data += "&" + URLEncoder.encode("user[name]", "UTF-8") + "=" + URLEncoder.encode("value1", "UTF-8"); //data += "&" + URLEncoder.encode("key2", "UTF-8") + "=" + URLEncoder.encode("value2", "UTF-8"); Customer c = new Customer(); // c.setName("Diego"); // byte[] cb = ObjectByteArray.getByteOfArray(c); String c64 = Base64.encode(cb); data += "&" + URLEncoder.encode("user[object]", "UTF-8") + "=" + URLEncoder.encode(c64, "UTF-8"); //String value = new String(c64); //System.out.println("OOi " + c64); //System.out.println(value.getBytes("base64").length); Customer d = (Customer) ObjectByteArray.getObject(Base64.decode(c64)); System.out.println(d.getName()); // Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("proxy.unicentro.br", 8080)); // Send data URL url = new URL("http://0.0.0.0:3000/users/new"); URLConnection conn = url.openConnection(); //conn.setRequestProperty("csrf-param", "authenticity_token"); //conn.setRequestProperty("csrf-token", "7UeGQR0qiZYdQEvRsY1ngqfpRrRs1HRbuqNLGpEDiv0="); // <meta name="csrf-param" content="authenticity_token"/> // <meta name="csrf-token" content="7UeGQR0qiZYdQEvRsY1ngqfpRrRs1HRbuqNLGpEDiv0="/> // conn.setDoOutput(true); // OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream()); // wr.write(data); // wr.flush(); // Get the response BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream())); Pattern pattern = Pattern.compile("<meta name=\"csrf-token\" content=\"(.*?)\"/>"); System.out.println(pattern.pattern()); String line; while ((line = rd.readLine()) != null) { Matcher matcher = pattern.matcher(rd.readLine()); while(matcher.find()) { System.out.println("ola"); } //System.out.println(line); } //wr.close(); rd.close(); } catch (Exception e) { } } }