我正在将 Xcode 用于社交媒体网站,我对登录/注册过程有一个快速了解。例如,我有一个链接到登录 API 页面的 UIWebView。 (例如 www._.com/api_login.php?)当用户在该页面上使用他们的凭据登录时,网站会将他们重定向到成功页面 (www._.com/api_success.php ?) 使用存储在 iOS 应用程序中的 API 身份验证 token ,用于嵌入网站源代码中的用户特定任务。
这是我的问题:一旦身份验证 token 位于 (www._.com/api_success.php?) 页面上,我如何告诉 Xcode 执行 Javascript 来获取身份验证 token ?请记住,该 URL 是特定于用户的,并且在链接末尾有一个用户特定的 api key 。 (www._.com/api_success.php?apiconnectkey=123456789)
在此先感谢您的帮助,
技术专家
Best Answer-推荐答案 strong>
我不确定我是否 100% 关注,但这里有一些值得关注的地方:
在您的 View Controller 中实现 UIWebViewDelegate 并设置委托(delegate)属性,然后实现此消息
-(BOOL)webViewUIWebView *)webView shouldStartLoadWithRequestNSURLRequest *)request navigationType:
文档
https://developer.apple.com/library/ios/documentation/uikit/reference/UIWebViewDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intfm/UIWebViewDelegate/webView:shouldStartLoadWithRequest:navigationType :
这将让您看到在 Web View 中设置的每个 URL。所以,你可以捕获 apiconnectkey。
此外,您可以在页面上执行 JavaScript
[self.webView stringByEvaluatingJavaScriptFromString"getToken()"]
其中 getToken() 是页面上的一个函数。这将返回一个字符串。
https://developer.apple.com/library/ios/documentation/uikit/reference/UIWebView_Class/Reference/Reference.html
关于ios - 如何在 UIWebView iOS 中检测重定向,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/25021817/
|