Estoy haciendo un programa que se comunica con la API de un juego por internet 
(Urban Rivals), lo hace por medio de OAuth, y estoy un poco perdido.


Por ahora he conseguido el 'Access Token', pero no se como enviar el 'Request'.
En las últimas 4 líneas creo que está el error (o al menos uno de ellos xD)
Dejo el código por aquí:


---------------------------------------------------------------------------------------------[CÓDIGO]
[...]
# Las variables c_key, c_secret, at_key, at_secret las tengo definidas mas 
arriba
consumer = oauth.Consumer(c_key, c_secret)
access_token = oauth.Token(at_key, at_secret)



API_URL = 'http://www.urban-rivals.com/api/'


apiRequest = [
{
'call': 'characters.getCharacters',
'params':
{
'sortby': 'name',
'orderby': 'asc'
}
}
]


jsonEncodedApiRequest = json.dumps(apiRequest)


params = {'request': jsonEncodedApiRequest}


################ Comentar: no es necesario ?
#params['oauth_token'] = access_token.key
#params['oauth_consumer_key'] = consumer.key
############################################


req = oauth.Request(method='GET', url=API_URL, parameters=params)


signature_method = oauth.SignatureMethod_HMAC_SHA1()
req.sign_request(signature_method, consumer, access_token)


##########


client = oauth.Client(consumer, access_token)
resp, content = client.request(req, 'GET')
print 'Resp:', resp
print 'Content:', content

---------------------------------------------------------------------------------------------[CÓDIGO]



Y el Traceback que me escupe es este:
Traceback (most recent call last):
[...]
File 
"/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/urlparse.py",
 line 141, in urlsplit
cached = _parse_cache.get(key, None)
TypeError: unhashable type: 'Request'

_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a