+ public String login(String email, String pw) throws IOException {
+ URL u = new URL("https://" + getServerName() + "/login");
+ HttpURLConnection huc = (HttpURLConnection) u.openConnection();
+ huc.setDoOutput(true);
+ OutputStream os = huc.getOutputStream();
+ String data = "username=" + URLEncoder.encode(email, "UTF-8")
+ + "&password=" + URLEncoder.encode(pw, "UTF-8");
+ os.write(data.getBytes());
+ os.flush();
+ String headerField = huc.getHeaderField("Set-Cookie");
+ headerField = headerField.substring(0, headerField.indexOf(';'));
+ return headerField;
+ }
+
+ public String getCSRF(URLConnection u) throws IOException {
+ String content = IOUtils.readURL(u);
+ Pattern p = Pattern.compile("<input type='csrf' value='([^']+)'>");
+ Matcher m = p.matcher(content);
+ if (!m.find()) {
+ throw new Error("New CSRF Token");
+ }
+ return m.group(1);
+ }