2009-12-07 3 views
1

Pour une application iPhone, je travaille sur une fonctionnalité qui permet aux utilisateurs de créer des tweets automatisés qui sont postés par un serveur (s'ils le souhaitent). J'ai choisi d'utiliser OAuth pour l'authentification Twitter. J'ai obtenu l'autorisation d'utiliser directement OAuth pour que l'application publie directement, et je peux facilement voir comment je pourrais demander aux utilisateurs de s'authentifier et de donner l'autorisation au serveur directement en utilisant un navigateur web (ou un UIWebView), avec le serveur responsable des fonctions OAuth. Mais, mes recherches sur le fait qu'il est possible pour le client d'obtenir les permissions OAuth et ensuite de les transmettre au serveur qui serait alors autorisé à les utiliser pour écrire des tweets (de la manière que vous pouvez obtenir des autorisations de session proxy) pour Facebook) est venu vide. Est-ce que cela est possible avec OAuth/Twitter, ou est-ce que cela va à l'encontre du but d'OAuth (ou n'est-il pas supporté par Twitter)? Ou est-ce aussi simple que d'envoyer au serveur l'information de jeton OAuth que le client a obtenue? J'essaie de préciser quel support sera nécessaire du côté du serveur avant de passer au code client, mais je ne trouve pas d'exemples de tweeting similaires.Comment devrions-nous obtenir l'autorisation de notre serveur pour poster des tweets sur Twitter, en utilisant OAuth, à partir de l'iPhone?

Merci pour toute aide!

+0

Juste pour clarifier les choses, nous avons besoin d'avoir le serveur faire le tweet malgré le fait que le faire de cette façon augmente la complexité. – Halle

Répondre

1

Je viens de poster une solution à cette question sur un autre thread:

iphone MGTwitterEngine - post a tweet with my app signature

+0

Salut Smendrick, Twitter Oauth de Ben Gottlieb était en fin de compte ma solution, merci d'avoir posté ici et de me rappeler de faire un suivi. L'application obtient les jetons et les transmet au serveur. – Halle

0

Semble que ce que vous voulez faire est possible, mais je ne pense pas que ce soit souhaitable. Si vous le faites côté serveur, vous devrez tout proxy et gérer les jetons d'accès à twitter par identifiant unique de chaque téléphone. Vous feriez probablement mieux de créer un client Twitter dans votre application et demandez à chaque utilisateur de s'authentifier auprès de Twitter pour soutenir directement votre application. Vous pouvez ensuite enregistrer l'activité de l'utilisateur sur votre serveur, mais le processus d'authentification est quelque chose dont vous n'aurez pas à vous préoccuper. Une fois que l'utilisateur a accordé l'accès à votre application, vous pouvez faire ce que vous voulez avec ses données.

Meilleures salutations,

3

que je fais la même chose avec l'API Foursquare qui utilise également OAuth. Je demande simplement à l'utilisateur d'autoriser mon application sur son iPhone, puis de passer les jetons OAuth spécifiques à l'utilisateur sur mon serveur. Sur le serveur je persiste les jetons liés aux ID de l'iPhone. Plus tard, le serveur est ce qui parle réellement à Foursquare pour faire des mises à jour.

Je ne vois pas pourquoi cela ne fonctionnerait pas avec Twitter, mais à moins que vous n'ayez une bonne raison de le faire sur le serveur, vous devriez le faire depuis l'iPhone de l'utilisateur. L'ajout d'un autre système est toujours quelque chose que vous voulez éviter.

Questions connexes