我如何获得Oauth授权的Instagram代码?

时间:2014-07-30 12:46:38

标签: java oauth instagram

我正在使用java for instagram制作桌面应用程序,我不知道如何从回调网址获取代码。我的应用是桌面版,所以我的REDIRECT-URI是http://instagram.com。因此,在我的应用程序中,我向https://api.instagram.com/oauth/authorize/?client_id=CLIENT-ID&redirect_uri=REDIRECT-URI&response_type=code发送请求并重定向到instagram.com?code=CODE。而且也忘了提一下,我用手拿了一个代码,我给了所有权限。所以现在我提出请求我直接重定向到带代码的URL。  如何在java中的程序中从回调uri获取代码?这是我的代码:

static void GetCode()
{
    try {
        String url = "https://api.instagram.com/oauth/authorize/?client_id=" + ClientId + "&redirect_uri=" + BackUri + "&response_type=code&scope=likes+comments+relationships";
        HttpClient client = new DefaultHttpClient();
        HttpGet request = new HttpGet(url);
        HttpResponse response = client.execute(request);
        BufferedReader rd = new BufferedReader(
                new InputStreamReader(response.getEntity().getContent()));

        StringBuffer result = new StringBuffer();
        String line = "";
        while ((line = rd.readLine()) != null) {
            result.append(line);
        }

        System.out.println(result.toString());

    }
    catch(Exception e)
    {
        System.out.print("GET CODE ERROR->"+e.toString());
    }

}

1 个答案:

答案 0 :(得分:2)

REDIRECT_URI更改为http://localhost。所以实际的重定向'代码应该在你身边完成。并且您可以解析参数code的值。另请查看this question的答案。这将帮助您使用代码获取URI。