2011-02-11 6 views
6

Je développe une application mobile qui nécessite un accès à Twitter. Il y a une tonne de documentation concernant l'utilisation de l'API Twitter avec des applications Web, mais j'ai du mal à trouver le bon flux ou des exemples utilisant le mode hors bande/code PIN pour les applications mobiles de bureau. Est-ce que quelqu'un peut me diriger vers un lien ou des exemples de code (préférablement en C#) qui peuvent me montrer comment utiliser l'API Twitter à partir d'une application de bureau ou mobile?Twitter API - OOB Flow

Merci.

+0

Je vois beaucoup de tutoriels pour les tutoriels Winforms/C#/twitter oAuth. – Shoban

+0

Oui, mais je n'en ai pas trouvé un qui mentionne l'authentification hors bande - (le lien vers le document pertinent sur le site Twitter semble être cassé - http://dev.twitter.com/pages/auth#oob) - I besoin d'utiliser cela comme c'est une application mobile. Des documents de Twitter: «Pour ces applications, il peut être difficile de gérer une URL de rappel si ce n'est impossible». –

Répondre

10

Il y a une description du flux OOB dans la section Glossaire au bas de http://dev.twitter.com/pages/auth

mode hors bande - Au lieu de fournir un rappel basé sur une URL lors de l'acquisition d'un jeton de demande, « oob » est fourni. Une fois que l'utilisateur a donné à Twitter ses informations d'identification de compte, il lui est présenté un écran contenant un code PIN et il lui est demandé d'entrer ce code dans l'application. L'application envoie ensuite ce code PIN en tant que oauth_verifier à l'étape de jeton d'accès pour terminer l'échange.

Qu'est-ce que cela signifie dans la pratique, par rapport au flux web normal:

  1. Dans l'étape (A) votre application démarre le débit en ouvrant une fenêtre de navigateur pour le flux OAuth, mais envoie une PARAMS de oauth_callback=oob plutôt que d'une URL de rappel
  2. étape (C) se termine par Twitter l'affichage d'une page de résultat d'autorisation contenant un code PIN pour l'utilisateur (plutôt que de faire un rappel à votre application avec le flux web normal)
  3. étape (D) oblige l'utilisateur à copier/taper le code PIN de Twitter page d'authentification dans votre application (votre application a évidemment besoin d'une sorte d'écran "Attente de code d'autorisation ..." pour cela :)
  4. Étape (E) votre application envoie le code PIN entré par l'utilisateur à Twitter dans le oauth_verifier param pour obtenir un jeton d'accès.

Essayez l'échantillon OAuthConsumerWpf dans DotNetOpenAuth http://www.dotnetopenauth.net/ pour un exemple de OAuth Code de la consommation que vous devriez être en mesure de modifier.

+0

Bonne explication. En général, vous n'avez pas besoin d'ouvrir une fenêtre de navigateur, envoyez/recevez simplement via HTTP (S). 2. À l'étape (C), l'application indique à l'utilisateur d'aller à https://api.twitter.com/oauth/authorize?oauth_token=. Twitter demandera à l'utilisateur de se connecter, d'autoriser l'application, etc., et d'afficher le code PIN. – reiniero