Twitter v1.1:400不良请求

问题描述:

我在使用新的Twitter API时遇到了问题:v1.0正常工作,但是如果我将URL更改为v1.1,我总是得到一个错误“400错误的请求” (看到Firebug)。Twitter v1.1:400不良请求

例子:

https://api.twitter.com/1/statuses/user_timeline.json?screen_name=twitterapi

这是工作就像一个魅力,一切工作为例外。 只需将URL更改为.../1.1/...即可,并且我得到一个错误的请求错误,甚至是JSON错误响应甚至是一些内容。

https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=twitterapi

注意:它不可能是一个速率限制,因为我曾经访问的URL的第一次。

https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=twitterapi重定向我https://api.twitter.com/1/statuses/user_timeline.json?screen_name=twitterapi

貌似1.1是一回事1

UPD:Looks like this is a rate limit(如1.1节2小时前为我工作)。即使您第一次点击API页面,您的某些应用程序(descktop或移动设备)也可以使用API​​方法。

UPD2:1.1 400错误请求意味着你不autorized(https://dev.twitter.com/docs/error-codes-responseshttps://dev.twitter.com/docs/auth/oauth#user-context)。所以,你需要得到用户上下文

+0

在任何浏览器中我使用(火狐,Chrome)我会被重定向。你使用什么浏览器? '1'将在2013年3月5日关闭。它与'1.1'不一样 - 请看这里:https://dev.twitter.com/blog/current-status-api-v1。 1 – Poru

+0

@Poru,看起来像一个Twitter的API错误。现在我也得到'400 Bad Request'。 –

+0

@Poru,看看更新的答案 –

您需要进行身份验证,并使用V1.1的API 下面是一些与蟒蛇tweepy工作之前使用OAuth授权 - 变状态,从用户的时间线

def twitter_fetch(screen_name = "BBCNews",maxnumtweets=10): 
    'Fetch tweets from @BBCNews' 
    # API described at https://dev.twitter.com/docs/api/1.1/get/statuses/user_timeline 

    consumer_token = '' #substitute values from twitter website 
    consumer_secret = '' 
    access_token = '' 
    access_secret = '' 

    auth = tweepy.OAuthHandler(consumer_token,consumer_secret) 
    auth.set_access_token(access_token,access_secret) 

    api = tweepy.API(auth) 
    #print api.me().name 
    #api.update_status('Hello -tweepy + oauth!') 

    for status in tweepy.Cursor(api.user_timeline,id=screen_name).items(2): 
     print status.text+'\n' 


if __name__ == '__main__': 
    twitter_fetch('BBCNews',10) 

对我来说,原因是附加到推文的媒体大小。如果它是< 1.2MB它通过确定,但如果它结束,我会得到一个400错误每次。

奇怪考虑的Twitter表示,鸣叫限制为3MB https://twittercommunity.com/t/getting-media-parameter-is-invalid-after-successfully-uploading-media/58354