2010-05-14 6 views
2

J'essaie de mettre en œuvre OAuth de Twitter dans mon application Web Code Igniter à laquelle l'URL de rappel est /auth/. Une fois que vous avez authentifié Twitter, vous êtes redirigé vers /auth/?oauth_token=SOME-TOKEN. Je souhaite conserver les bonnes URL propres fournies par le framework en utilisant le style /controller/method/ de l'URL, mais je souhaite également activer les chaînes de requête, il n'y aura jamais qu'un seul nom des données oauth_token donc c'est bon si ça doit être codé en dur.Activer les chaînes de requête dans Code Igniter

Des idées? J'ai essayé des tonnes de choses que les gens disent de faire, mais aucun travail :( PS:.. J'utilise la méthode .htaccess de réécriture d'URL

Répondre

7

Il y a plusieurs façons de gérer cette

la plupart des gens, et Twitter Lib, Elliot Haughin étendre la bibliothèque CI_Input avec une bibliothèque MY_Input qui définit allow_query_strings à true

Vous aurez aussi besoin d'ajouter ? aux caractères autorisés dans config/config.php et définir $ config [ « url_protocal »] à PATH_INFO

voir ici: Enable GET in CodeIgniter

+0

Bon stuffffffff –

0

J'ai utilisé un index.php piraté pour reconnaître les utilisateurs qui reviennent de Twitter, vérifier les valeurs valides et sûres, puis re-diriger vers une CodeIgniter URL conviviale.

Il peut ne pas être goût à tout le monde, mais je l'ai préféré à l'autorisation de chaînes de requête dans toute l'application au lieu d'une seule circonstance particulière.

+0

Si vous allez suivre cette route, pourquoi ne pas simplement avoir un fichier PHP séparé qui fait une chaîne de requête à la conversion du segment URI? Je pense que ce serait mieux que de pirater index.php de CI. – Zack

+0

Ouais je suppose, je viens d'ajouter une ligne d'inclusion au fichier php qui détermine s'il faut intercepter ou non. – Jim

1

Codeigniter Reactor permet d'accéder directement à $ _GET ou via $ this-> input-> get(). Vous n'avez pas besoin d'utiliser MY_Input ou même de changer votre config.php. Cependant, cette méthode laisse la chaîne de requête dans l'URL.

Questions connexes