使用 HtmlUnit 从 instagram 获取访问令牌

Using HtmlUnit to get the access token from instagram

由于 httpURL 连接没有中断,我切换到 htmlUnit 以编程方式获取授权代码以从 instagram 获取访问令牌,然后从那里做我需要的任何事情,事情是我'我一直试图从 url

检索授权码

mysite.com/?code=ca1ec5b06a0b409293cff74ed9876a46

但我无法访问那个 link,因为它似乎没有从授权 URL 重定向。这个:

https://instagram.com/accounts/login/?force_classic_login=&next=/oauth/authorize/%3Fclient_id%CLIENT_ID%26redirect_uri%3Dhttp%3A//MYSITE.COM%26response_type%3Dcode

这是我尝试访问那个 url:

的代码
WebClient webClient = new WebClient(BrowserVersion.FIREFOX_38);
    webClient.getOptions().setJavaScriptEnabled(true);
    webClient.getOptions().setRedirectEnabled(true);
    webClient.getOptions().setThrowExceptionOnScriptError(false);
    webClient.getOptions().setCssEnabled(true);     
    HtmlPage page = (HtmlPage) webClient.getPage(authURL);
    WebResponse response = page.getWebResponse();
    String content = response.getContentAsString();
    System.out.println(page.getUrl());

我通过尝试在未登录站点的情况下获得授权 url 解决了这个问题,然后当我被要求登录时,我使用了 htmlunit to get the html form to login to instagram,最终我可以获得所需的重定向 url 与代码。