Logging in via Jsoup post method does not work

I have the following code that I use to log in to the website programmatically. However, instead of returning a registered html page (with information about user data), it returns html for the login page. I tried to find what was going wrong several times, but I could not find it.

 public class LauncherClass {

static String username = "----username here------"; //blocked out here for obvious reasons
static String password = "----password here------";
static String loginUrl = "https://parents.mtsd.k12.nj.us/genesis/parents/j_security_check";
static String userDataUrl = "https://parents.mtsd.k12.nj.us/genesis/parents?module=gradebook";

public static void main(String[] args) throws IOException{

LauncherClass launcher = new LauncherClass();
launcher.Login(loginUrl, username, password);

}

public void Login(String url, String username, String password) throws IOException {

    Connection.Response res = Jsoup
            .connect(url)
            .data("j_username",username,"j_password",password)
            .followRedirects(true)
            .ignoreHttpErrors(true)
            .method(Method.POST)
            .userAgent("Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.4 Safari/537.36")
            .timeout(500)
            .execute();

    Map <String,String> cookies = res.cookies();

    Document loggedIn = Jsoup.connect(userDataUrl)
            .cookies(cookies)
            .get();

    System.out.print(loggedIn);

    }
}

[NOTE] The login form has the line:

 <input type="submit" class="saveButton" value="Login">

but it does not have the attribute "name", so I did not publish it

Any answers / comments appreciated!

[UPDATE2] The following is displayed for the login page in the browser ...

 ---General
    Remote Address:107.0.42.212:443
    Request URL:https://parents.mtsd.k12.nj.us/genesis/j_security_check
    Request Method:POST
    Status Code:302 Found
----Response Headers
    view source
    Content-Length:0
    Date:Sun, 26 Jul 2015 20:06:15 GMT
    Location:https://parents.mtsd.k12.nj.us/genesis/parents?gohome=true
    Server:Apache-Coyote/1.1
----Request Headers
    view source   
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    Accept-Encoding:gzip, deflate
    Accept-Language:en-US,en;q=0.8
    Cache-Control:max-age=0
    Connection:keep-alive
    Content-Length:51
    Content-Type:application/x-www-form-urlencoded
    Cookie:JSESSIONID=33C445158EB6CCAFFF77D2873FD66BC0;         lastvisit=458D80553DC34ADD8DB232B5A8FC99CA
    Host:parents.mtsd.k12.nj.us
    HTTPS:1
    Origin:https://parents.mtsd.k12.nj.us
    Referer:https://parents.mtsd.k12.nj.us/genesis/parents?gohome=true
    User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_4)                 AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.4 Safari/537.36
----Form Data
    j_username: ---username here---
    j_password: ---password here---        
0
source share
1 answer

.
1 - GET URL- - https://parents.mtsd.k12.nj.us/genesis/parents?gohome=true, session cookies.
2 -
post cookies, 1.
-

Connection.Response res = null;
Document doc = null;

try {   //first connection with GET request
        res = Jsoup.connect("https://parents.mtsd.k12.nj.us/genesis/parents?gohome=true")
//                  .userAgent(YourUserAgent)
//                  .header("Accept", WhateverTheSiteSends)
//                  .timeout(Utilities.timeout)
                    .method(Method.GET)
                    .execute();         
    } catch (Exception ex) {
        //Do some exception handling here
    }
try {
        doc = Jsoup.connect("https://parents.mtsd.k12.nj.us/genesis/parents/j_security_check"")
    //          .userAgent(YourUserAgent)
    //          .referrer(Referer)
    //          .header("Content-Type", ...)
                .cookies(res.cookies())
                .data("j_username",username)
                .data("j_password",password)                    
                .post();
    } catch (Exception ex) {
        //Do some exception handling here
    }
    //Now you can use doc!

, HEADERS, userAgent, referrer, content-type . doc HTML .

, , , post session cookies, .

+2

Source: https://habr.com/ru/post/1649376/


All Articles