У меня проблема с аутентификацией Twitter по протоколу oauth и использованием URL-адреса обратного вызова.
Я кодирую на php и использую образец кода, на который ссылается твиттер-вики, http://github.com/abraham/twitteroauth
Я получил этот код, попробовал простой тест, и он отлично сработал. Однако я хочу программно указать URL-адрес обратного вызова, а пример этого не поддерживает.
Поэтому я быстро изменил метод getRequestToken (), чтобы он принимал параметр, и теперь он выглядит так:
function getRequestToken($params = array()) {
$r = $this->oAuthRequest($this->requestTokenURL(), $params);
$token = $this->oAuthParseResponse($r);
$this->token = new OAuthConsumer($token['oauth_token'], $token['oauth_token_secret']);
return $token;
}
и мой звонок выглядит так
$tok = $to->getRequestToken(array('oauth_callback' => 'http://127.0.0.1/twitter_prompt/index.php'));
Это единственное изменение, которое я сделал, и перенаправление работает как шарм, однако я получаю сообщение об ошибке, когда затем пытаюсь использовать свой недавно предоставленный доступ, чтобы попытаться позвонить. Я получаю сообщение об ошибке «Не удалось аутентифицировать вас». Кроме того, приложение никогда не добавляется к авторизованным пользователям подключения.
Теперь я прочитал спецификации и подумал, что все, что мне нужно сделать, это указать параметр при получении токена запроса. Может ли мне помочь кто-нибудь более опытный в oauth и twitter? Спасибо