public JSONObject loginToMC(String mcUrl, String mcUserName, String mcPassword, String proxyAddress, String proxyUsername, String proxyPassword) {

        JSONObject returnObject = new JSONObject();
        try {
            Map<String, String> headers = new HashMap<String, String>();
            headers.put(Constants.ACCEPT, "application/json");
            headers.put(Constants.CONTENT_TYPE, "application/json;charset=UTF-8");

            JSONObject sendObject = new JSONObject();
            sendObject.put("name", mcUserName);
            sendObject.put("password", mcPassword);
            sendObject.put("accountName", "default");
            HttpResponse response = HttpUtils.post(HttpUtils.setProxyCfg(proxyAddress, proxyUsername, proxyPassword), mcUrl + Constants.LOGIN_URL, headers, sendObject.toJSONString().getBytes());

            if (response != null && response.getHeaders() != null) {
                Map<String, List<String>> headerFields = response.getHeaders();
                List<String> hp4mSecretList = headerFields.get(Constants.LOGIN_SECRET);
                String hp4mSecret = null;
                if (hp4mSecretList != null && hp4mSecretList.size() != 0) {
                    hp4mSecret = hp4mSecretList.get(0);
                }
                List<String> setCookieList = headerFields.get(Constants.SET_COOKIE);
                String setCookie = null;
                if (setCookieList != null && setCookieList.size() != 0) {
                    setCookie = setCookieList.get(0);
                    for(String str : setCookieList){
                        if(str.contains(Constants.JSESSIONID) && str.startsWith(Constants.JSESSIONID)){
                            setCookie = str;
                            break;
                        }
                    }
                }
                String jsessionId = getJSESSIONID(setCookie);
                returnObject.put(Constants.JSESSIONID, jsessionId);
                returnObject.put(Constants.LOGIN_SECRET, hp4mSecret);
                returnObject.put(Constants.COOKIE, Constants.JESEEIONEQ + jsessionId);
            }

        } catch (Exception e) {
            e.printStackTrace();
        }
        return returnObject;
    }
public JSONObject loginToMC ( String mcUrl , String mcUserName , String mcPassword , String proxyAddress , String proxyUsername , String proxyPassword ) { JSONObject returnObject = new JSONObject ( ) ; try { Map < String , String > headers = new HashMap < String , String > ( ) ; headers . put ( Constants . ACCEPT , "application/json" ) ; headers . put ( Constants . CONTENT_TYPE , "application/json;charset=UTF-8" ) ; JSONObject sendObject = new JSONObject ( ) ; sendObject . put ( "name" , mcUserName ) ; sendObject . put ( "password" , mcPassword ) ; sendObject . put ( "accountName" , "default" ) ; HttpResponse response = HttpUtils . post ( HttpUtils . setProxyCfg ( proxyAddress , proxyUsername , proxyPassword ) , mcUrl + Constants . LOGIN_URL , headers , sendObject . toJSONString ( ) . getBytes ( ) ) ; if ( response != null && response . getHeaders ( ) != null ) { Map < String , List < String > > headerFields = response . getHeaders ( ) ; List < String > hp4mSecretList = headerFields . get ( Constants . LOGIN_SECRET ) ; String hp4mSecret = null ; if ( hp4mSecretList != null && hp4mSecretList . size ( ) != 0 ) { hp4mSecret = hp4mSecretList . get ( 0 ) ; } List < String > setCookieList = headerFields . get ( Constants . SET_COOKIE ) ; String setCookie = null ; if ( setCookieList != null && setCookieList . size ( ) != 0 ) { setCookie = setCookieList . get ( 0 ) ; for ( String str : setCookieList ) { if ( str . contains ( Constants . JSESSIONID ) && str . startsWith ( Constants . JSESSIONID ) ) { setCookie = str ; break ; } } } String jsessionId = getJSESSIONID ( setCookie ) ; returnObject . put ( Constants . JSESSIONID , jsessionId ) ; returnObject . put ( Constants . LOGIN_SECRET , hp4mSecret ) ; returnObject . put ( Constants . COOKIE , Constants . JESEEIONEQ + jsessionId ) ; } } catch ( Exception e ) { e . printStackTrace ( ) ; } return returnObject ; }
Login to MC