Есть код авторизации, отправкой поста с X-CSRF-Token:
public class testpost {
static HtmlPage resultpage;
public static void testsite (WebClient webClient) throws IOException {
WebRequest requestSettings = new WebRequest(new URL("http://trolls.ru/in"), HttpMethod.POST);
ArrayList<NameValuePair> requestParameters = new ArrayList<NameValuePair>();
requestParameters.add(new NameValuePair("login","troll"));
requestParameters.add(new NameValuePair("pass","123"));
requestSettings.setRequestParameters(requestParameters);
requestSettings.setAdditionalHeader("X-CSRF-Token", "Fetch");
resultpage = webClient.getPage(requestSettings);
}
public static void main(String[] args) throws Exception {
java.util.logging.Logger.getLogger("com.gargoylesoftware.htmlunit").setLevel(Level.OFF);
WebClient webClient = new WebClient(BrowserVersion.CHROME_16);
webClient.setAjaxController(new NicelyResynchronizingAjaxController());
testsite(webClient);
System.out.println(resultpage.asXml());
webClient.closeAllWindows();
}
}
Но при попытке авторизации, вываливается ошибка:
Exception in thread "main" java.lang.ClassCastException: com.gargoylesoftware.htmlunit.UnexpectedPage cannot be cast to com.gargoylesoftware.htmlunit.html.HtmlPage
at testpost.testsite(testpost.java:75)
at testpost.main(testpost.java:88)