tendencias - twitter card not showing image
Twitter v1.1: 400 Solicitud incorrecta (3)
Tengo problemas con la nueva API de Twitter: v1.0 funciona sin problemas, pero si cambio la URL a la v1.1, recibo todo el tiempo un error "400 solicitud incorrecta" (visto con Firebug).
Ejemplo:
https://api.twitter.com/1/statuses/user_timeline.json?screen_name=twitterapi
Esto funciona como un hechizo, todo funciona como exceptuado. Simplemente cambiando la URL a .../1.1/...
y obtengo un error de solicitud incorrecta e incluso una respuesta de error JSON o incluso algo de contenido.
https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=twitterapi
Nota: No podría ser una limitación de velocidad, porque accedí a la URL la primera vez.
Necesita autenticarse y autorizar el uso de oauth antes de usar v1.1 apis Aquí hay algo que funciona con python tweepy: obtiene estados de la línea de tiempo de los usuarios
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)
Para mí, la causa fue el tamaño de los medios que se adjuntaron al tweet. Si era <1.2MB, pasó por OK, pero si hubiera terminado, obtendría un error de 400 cada vez.
Extraño considerando que Twitter dice que el límite de tweets es de 3MB https://twittercommunity.com/t/getting-media-parameter-is-invalid-after-successfully-uploading-media/58354
https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=twitterapi me redirecciona a https://api.twitter.com/1/statuses/user_timeline.json?screen_name=twitterapi
Parece que 1.1
es lo mismo que 1
UPD: Parece que este es un límite de velocidad (como el enlace 1.1
funcionó para mí hace 2 horas). Incluso si accedes a la página de API por primera vez, algunas de tus aplicaciones (destoptop o móvil) podrían usar métodos API.
UPD2: en 1.1 400 La solicitud incorrecta significa que no está autorizado ( https://dev.twitter.com/docs/error-codes-responses , https://dev.twitter.com/docs/auth/oauth#user-context ) Entonces necesitas obtener el contexto del usuario