我正在使用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());
}
}
答案 0 :(得分:2)
将REDIRECT_URI
更改为http://localhost
。所以实际的重定向'代码应该在你身边完成。并且您可以解析参数code
的值。另请查看this question的答案。这将帮助您使用代码获取URI。