Qu'est ce qu'un redirect URI? comment s'applique-t-il à l'application iOS pour OAuth2.0?

programmeur débutant ici, s'il vous plaît pardonnez l'ignorance et les explications sera vraiment agréable :)

j'ai essayé de lire les tutoriels pour un certain service OAuth 2.0, mais je ne comprends pas ce URI de redirection... dans mon contexte particulier, disons que j'essaie de construire une application iPhone qui utilise OAuth 2.0 pour un certain service. J'ai un ID D'application qui a été généré, mais j'ai besoin de fournir une sorte d'URI de redirection pour générer la clé API.

est-ce un URL que je suis censé héberger quelque part moi-même?? Comme son nom l'indique, je pense que l'URL de redirection est censée "rediriger" quelqu'un quelque part. Ma conjecture est que c'est l'URL d'un utilisateur est redirigé après la connexion au service.

cependant, même si cette hypothèse est correcte, Je ne comprends pas une autre chose - comment mon application peut-elle être ouverte à nouveau après que je les ai envoyés au navigateur pour la connexion de l'utilisateur?

155
demandé sur Andrew Brēza 2012-11-08 05:22:36

4 réponses

lisez ceci:

http://www.quora.com/OAuth-2-0/How-does-OAuth-2-0-work

ou une explication encore plus simple mais rapide:

http://agileanswer.blogspot.se/2012/08/oauth-20-for-my-ninth-grader.html

L'URI de redirection est le point d'entrée de callback de l'application. Pensez à comment fonctionne OAuth for Facebook-après que l'utilisateur final accepte les permissions, "quelque chose" doit être appelé par Facebook pour en revenir à l'application, et que "quelque chose" est l'URI de redirection. De plus, L'URI de redirection doit être différent du point d'entrée initial de l'application.

l'autre point clé de ce puzzle est que vous pourriez lancer votre application à partir d'une URL donnée à un webview . Pour ce faire, j'ai simplement suivi le guide ici:

http://iosdevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.html

et

http://inchoo.net/mobile-development/iphone-development/launching-application-via-url-scheme /

remarque: sur ces 2 derniers liens, "http://" travaille à l'ouverture de safari mobile, mais "tél://" ne fonctionne pas dans le simulateur

dans la première application, I appel

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"secondApp://"]];

dans ma deuxième application, j'enregistre" secondApp "(et non" secondApp://") comme nom du schéma D'URL, avec ma société comme identifiant D'URL.

177
répondu David T. 2016-04-08 15:43:54

jetez un oeil à OAuth 2.0 playground.Vous obtiendrez une vue d'ensemble du protocole.Il s'agit essentiellement de l'environnement(comme n'importe quelle application) qui vous montre les étapes impliquées dans le protocole.

https://developers.google.com/oauthplayground /

8
répondu Reckoner 2015-09-03 11:51:58

uri redirigé est l'endroit où l'Utilisateur sera redirigé après une connexion réussie à votre application. par exemple, pour obtenir un token d'accès pour votre application sur facebook, vous devez subimt redirigé uri qui n'est rien que le domaine d'application que votre fournir lorsque vous créez votre application facebook.

7
répondu Dhirender Tyagi 2014-05-30 07:20:02

si vous utilisez Facebook SDK, vous n'avez pas besoin de vous déranger pour entrer n'importe quoi pour rediriger URI sur la page de gestion de l'application de facebook. Il vous suffit de configurer un Schéma D'URL pour votre application iOS. Le schéma D'URL de votre application devrait être une valeur "fbxxxxxxxxxxx" où xxxxxxxxxxxxx est votre identifiant d'application tel qu'identifié sur facebook. Pour configurer le schéma D'URL de votre application iOS, allez dans l'onglet info des paramètres de votre application. et ajouter le type D'URL.

2
répondu Kunal Khanna 2015-05-20 08:48:42