2010-11-22 4 views
0

J'ai une certaine confusion concernant Ruby et OAuth. En gros, voici ce que je fais:Comment obtenir des paramètres avec oauth?

@oauth.get('/foo.json?page=1') 

Cependant, pour une raison quelconque en dehors de ma compréhension, l'application du fournisseur ne reçoit que /foo.json, les get params dénudés.

Je me demande s'il me manque quelque chose d'évident ici.

Répondre

0

Pour OAuth 1.0a/RFC 5849, vous pouvez trouver que mon implémentation OAuth Signet est beaucoup plus facile à utiliser que la gemme oauth. Documentation devrait être assez simple. Le support OAuth 2.0 est en cours et à venir.

Dans votre cas spécifique, cependant, c'est un problème avec la conception de la gemme oauth. Le premier paramètre de la fonction get est le chemin. Pas la requête complète URI. Ils supposent apparemment que personne n'utilisera jamais les paramètres de requête avec cette méthode particulière? Je suppose que la logique ici est que, puisque les paramètres de requête doivent être signés, l'analyse de l'URI de la demande de manière fiable et la fusion des paramètres a été plus de travail qu'ils voulaient faire? Avec mes excuses aux auteurs de cette bibliothèque, je recommande simplement d'éviter de l'utiliser. C'est vraiment mal conçu à mon avis. C'est une implémentation assez bonne pour certaines choses, mais si vous parlez à une API qui n'utilise pas le serveur OAuth correspondant pour Ruby, je ne pense pas que ce soit un très bon travail.

+0

Merci pour votre réponse, il m'a semblé étrange que je ne pouvais pas utiliser les paramètres de requête, cela n'a aucun sens. Je vais jeter un coup d'oeil à votre bibliothèque et voir ce que je peux faire. –

Questions connexes