- blogs:
- cles::blog
2014/01/22

Twitter4J で HTTPS を有効にする

Twitter の API は1月14日から HTTPS のみのサポートになっていた*1*2のを他人事のように眺めていましたが、Twitter4J を使って作った自作アプリも動かなくなっていました。
具体的にはこんな感じの Exception を吐きます。
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
Caused by: Server returned HTTP response code: 403 for URL: http://api.twitter.com/1.1/statuses/update.json
Relevant discussions can be found on the Internet at:
http://www.google.co.jp/search?q=b2b52c28 or
http://www.google.co.jp/search?q=10981ac7
TwitterException{exceptionCode=[b2b52c28-10981ac7 4ef6906d-026b39e1 4ef6906d-026b39df], statusCode=-1, message=null, code=-1, retryAfter=-1, rateLimitStatus=null, version=3.0.3}
at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:192)
at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:61)
at twitter4j.internal.http.HttpClientWrapper.post(HttpClientWrapper.java:98)
at twitter4j.TwitterImpl.post(TwitterImpl.java:1871)
at twitter4j.TwitterImpl.updateStatus(TwitterImpl.java:241)
at HsurHeadacheApp.main(HsurHeadacheApp.java:84)
... 5 more
Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: http://api.twitter.com/1.1/statuses/update.json
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:1491)
at java.security.AccessController.doPrivileged(Native Method)
at sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1485)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1139)
at twitter4j.internal.http.HttpResponseImpl.<init>(HttpResponseImpl.java:36)
at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:156)
... 10 more
本当は Twitter4J を最新にアップデートすれば良いんでしょうが、今回は設定ファイルである twitter4j.properties*3 に http.useSSL=true という行を追加して逃げました。これで通信が HTTPS になるのでひとまず動くようにはなります。
- *1: Restricting api.twitter.com to SSL/TLS traffic | Twitter Developers
- *2: Twitter、API変更 - HTTPS必須へ | マイナビニュース
- *3: Twitter4J - 設定
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/6422
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . アーロンチェアのポスチャーフィットを修理(112062)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(110695)
3 . 年次の人間ドックへ(110315)
4 . 2023 年分の確定申告完了!(1つめ)(109862)
5 . 三菱鉛筆がラミーを買収(109769)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(110695)
3 . 年次の人間ドックへ(110315)
4 . 2023 年分の確定申告完了!(1つめ)(109862)
5 . 三菱鉛筆がラミーを買収(109769)
cles::blogについて
Referrers