Twitter
TwitterAPI

TwitterのAPIでcallbackURLをチェックするようになった


TwitterのAPIでCallbackのエラーが出ていた

Twitterの認証でエラーが出ていた。

急になぜ??

Received HTTP status code [403] with message

"
<?xml version="1.0" encoding="UTF-8"?>
<errors>
<error code="415">Callback URL not approved for this client application. Approved callback URLs can be adjusted in your application settings
</error>
</errors>
"
when getting temporary credentials.

Enable Callback Locking (It is recommended to enable callback locking to ensure apps cannot overwrite the callback url)

error code="415" ってなんだ??


原因

調べてみると一ヶ月前から告知がされていました。

https://twittercommunity.com/t/action-required-sign-in-with-twitter-users-must-whitelist-callback-urls/105342

これまではURLのチェックがなく、とりあえず入れていればなんでもOKでしたが、きちんとチェックするようになったということです。

callback.png

こんなふうに、今まではURLはなんでも良かったのです。


解決策

2018年6月13日以降はAPIを使用するアプリ側できちんとcallback時のURLを設定する必要があります。

アカウントを連携する時に返ってくるURLになります。

ちなみに開発環境においては、 localhostはNGでしたが、Vagrantで使用しているIPを使ってもOKでした。

実際のアプリでは正しくURLを指定する必要があります。

つまりoauth/request_tokenをリクエストする時のoauth_callbackパラメータに入るurlを、Twitterの開発アカウントの設定画面のcallbackURLで設定したURLと一致していないとダメになりました。

詳しくはこちら

https://twittercommunity.com/t/application-oauth-callback-url-cant-be-whitelisted/105957

https://developer.twitter.com/en/docs/basics/callback_url