http://127.0.0.1:8080/Mailchimp/Access#access_token=^^^^^^^^^^^^^^^^^^^^^^^^^&expires_in=0
这是我的mailchimp网址,如何通过java提取access_token
还有另一种获取访问令牌但获取响应消息的方法 - 错误请求
URL siteUrl = new URL("https://login.mailchimp.com/oauth2/token");
HttpURLConnection conn = (HttpURLConnection) siteUrl.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setDoInput(true);
DataOutputStream out = new DataOutputStream(conn.getOutputStream());
String content = "?grant_type=authorization_code&client_id=^^^^^^^^^^&client_secret=^^^^^^^^^^^^^^^^^^^^^^^^&code="+auth_code+"&redirect_uri=http://127.0.0.1:8080/Mailchimp/Access";
out.writeBytes(content);
System.out.println(content);
out.flush();
out.close();
System.out.println(conn.getResponseMessage());
答案 0 :(得分:1)
#之后的部分称为“片段”或“引用”。这是提取相关部分的基本方法:
public static String getAccessToken(String uriString) {
URI uri = URI.create(uriString);
String[] parameters = uri.getFragment().split("\\&");
for (String parameter : parameters) {
String[] parts = parameter.split("\\=");
if (parts[0].equals("access_token")) {
if (parts.length == 1) {
throw new RuntimeException("missing access token");
}
return parts[1];
}
}
throw new RuntimeException("no access token");
}