使用用户名和密码登录twitter,发布java
我从图书馆Twitter4j获得OAuthToken,Authentity Token(这是正确的,因为当我登录到浏览器时它的作品)。然后尝试使用密码和用户名登录twiiter,并发出POST请求:使用用户名和密码登录twitter,发布java,java,twitter,login,twitter4j,Java,Twitter,Login,Twitter4j,我从图书馆Twitter4j获得OAuthToken,Authentity Token(这是正确的,因为当我登录到浏览器时它的作品)。然后尝试使用密码和用户名登录twiiter,并发出POST请求: URL url = new URL("https://api.twitter.com/oauth/authorize"); 将参数添加到请求: String params = "oauth_token" + "=" + oAuthToken; params += "&
URL url = new URL("https://api.twitter.com/oauth/authorize");
将参数添加到请求:
String params = "oauth_token" + "=" + oAuthToken;
params += "&" + "session[username_or_email]" + "=" + login;
params += "&" + "session[password]" + "=" + password;
params += "&" + "redirect_after_login" + "=" + "https://twitter.com/oauth/authorize?oauth_token=" + oAuthToken;
params += "&" + "authenticity_token" + "=" + authToken;
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
OutputStreamWriter output = new OutputStreamWriter(connection.getOutputStream());
output.write(params);
output.flush();
获取响应:
StringBuilder sb = new StringBuilder();
int httpResult = connection.getResponseCode();
if (httpResult == HttpURLConnection.HTTP_OK) {
BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream(), "utf-8"));
String line;
while ((line = br.readLine()) != null)
sb.append(line).append("\n");
br.close();
PrintWriter out = new PrintWriter("response.html");
out.print(sb);
out.close();
out.flush();
System.out.println(getVerifier(sb.toString()));
} else {
System.out.println("Response: " + connection.getResponseMessage() + ", Status: " + httpResult);
}
但什么也没发生,作为回应,我有一个HTML页面,我可以登录twitter