2
これはGETで使用すると発生しません。401スクライブを使用してPOSTを行う場合oauth java
すなわち
これが機能しない:
ProxyAuthenticator pa = new ProxyAuthenticator();
Authenticator.setDefault(pa);
OAuthService service = new ServiceBuilder().provider(TwitterApi.class).apiKey(strAPIKey).apiSecret(strAPISecret).build();
Token requestToken = service.getRequestToken();
Scanner in = new Scanner(System.in);
Verifier verifier = new Verifier(in.nextLine());
String url = "http://api.twitter.com/1/statuses/update.json?status=helllllooooo";
OAuthRequest request = new OAuthRequest(Verb.POST, url);
service.signRequest(accessToken , request2);
final Response response = request.send();
応答は、上記のコードでGETを使用して応答200を返し、しかし401を返します。 すなわち
url = "http://api.twitter.com/1/account/verify_credentials.json";
OAuthRequest request = new OAuthRequest(Verb.GET, url);
service.signRequest(accessToken, request);
Response resp = request.send();
私は何をすべきですか?
私のアプリのアクセスタイプは、Twitterのウェブサイト上で「読み取り専用」に設定したが判明。 アプリの設定ページ(例:twitter.com/apps/edit/12345)には、次のようなラジオボタンのフィールドがあります:デフォルトアクセスタイプ:読み取りと書き込み/読み取り専用「読み取り専用」にチェックを入れてステータスを確認するとAPIは401を返します。 –