2016-03-19 5 views
1

Мне нужна помощь с twitter API. request_token приводит к ошибке:Twitter Api Request Token Url Issues

Could Not Authendicate You... Authorization Required. 

Мой код:

var url="https://api.twitter.com/oauth/request_token?"; 
url+="&oauth_callback=" +callbackUrl; 
$.ajax({ 
    url:url, 
    type:'POST', 
    data: {}, 
    async :true, 
    beforeSend:function(xhr){ 
     xhr.setRequestHeader('Authorization','OAuth oauth_consumer_key="3lqppVjoq7snHzGkvlab7uSix ", oauth_nonce="f7998b22bed5df683dc2f54c0a0679b3 ", oauth_signature="0CSKKi1hy901Mh6uHdLnL%2FDUXwE%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp= "1458408374 ", oauth_token, "403211404-jJsPD74gOelV7wFcSfoaRwfWAnZqsB9ysXDTO5ox", oauth_version="1.0"'); 
    },  
    success: function(data){ 
     alert(data); 
    }, 
    error:function(error){ 
     alert(JSON.stringify(error)); 
    } 
}); 

ответ

0

Есть несколько вещей, которые я могу сразу увидеть:

  1. Twitter docs утверждают, что вы должны включать все oauth_ * в заголовке, если вы используете OAuth на основе HTTP-заголовка (сюда входит параметр oauth_callback).
  2. Параметр oauth_token не является частью потока токенов первичного запроса (поскольку вы еще не получили токен), поэтому его следует удалить из заголовка авторизации.

Убедитесь, что ваша подпись правильная, что вы можете сделать с помощью генератора онлайн-сигнатур, такого как this one.