oauth 2.0 webview ios sdk

我正在构build一个ios SDK并实现oauthstream。

基本上我需要做到以下几点:

  • 用户点击一个button。
  • 看到一个webviewpopup。
  • 他们在webview中签名/注册,授予访问帐户的权限。
  • webview将它们redirect回url中的代码。
  • 我需要以某种方式使用该代码进行api调用来获取他们的访问令牌。

我怎么能在objective-c上面做到这一点? 这意味着如何使用我的网站注册/签名stream向他们显示webview,并使用redirect的url中的代码访问访问令牌?

我知道如何做webview,但我不知道如何让代码来使用api调用。

看看这个例子在这里 。 它被configuration为使用我们的服务 (实现OAuth 2),但它是开源的,因此您可以修改它以指向您计划连接到的任何OAuth服务器。

关键是方法shouldStartLoadWithRequest (见这里 ),每当URL将被加载,将通知你。 如果URL是最后一个redirect到callback地址(带有令牌),那么你从请求中parsing它,并提取access_token (或者更好的是JWT )。