Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/120.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何在WKWebView中支持授权令牌?_Ios_Webview_Oauth 2.0_Wkwebview - Fatal编程技术网

Ios 如何在WKWebView中支持授权令牌?

Ios 如何在WKWebView中支持授权令牌?,ios,webview,oauth-2.0,wkwebview,Ios,Webview,Oauth 2.0,Wkwebview,我有本机iOS应用程序,其中一个应用程序流应该通过WebView完成。从应用程序的本机部分,用户可以导航到WebView部分。而且,不知何故,网页应该识别用户。我在应用程序中存储了授权令牌,当然我可以在WKWebView的标题中传递该令牌。而其他的东西将在网络上处理(路由等)。但这是一种好的、安全的方法吗?我如何在应用程序中轻松集成WebView以关注令牌?这里有几个选项: 根据经验,使用标题似乎有问题,但希望您能让它发挥作用。如果令牌在web视图中过期,感觉这会有可靠性问题,所以您需要管理它

我有本机iOS应用程序,其中一个应用程序流应该通过WebView完成。从应用程序的本机部分,用户可以导航到WebView部分。而且,不知何故,网页应该识别用户。我在应用程序中存储了授权令牌,当然我可以在WKWebView的标题中传递该令牌。而其他的东西将在网络上处理(路由等)。但这是一种好的、安全的方法吗?我如何在应用程序中轻松集成WebView以关注令牌?

这里有几个选项:

  • 根据经验,使用标题似乎有问题,但希望您能让它发挥作用。如果令牌在web视图中过期,感觉这会有可靠性问题,所以您需要管理它

  • 简单选项:打开系统浏览器-Safari或Safari视图控制器。但是,用户可能需要再次登录,这可能是您的利益相关者不喜欢的

  • 更复杂的选项:使用Javascript API将令牌从移动UI传递到web UI。这将给你完全的控制权,web应用程序可以回调移动应用程序以刷新其令牌。如果节约使用,它可能是最好的可用性选择。不过,这需要在web和移动UI中进行复杂的基础工作

  • 安全性

    如果两者都是同一逻辑应用程序的一部分并且访问相同级别的数据,那么将令牌从移动UI传递到Web UI是很自然的。在这种情况下,选项1或3将起作用

    如果应用程序具有非常不同的安全级别(例如web应用程序现在获得的特权令牌比通常获得的要高得多),那么我不会传递令牌,而是使用选项2

    更多详细信息

    我不久前写了一篇关于注意事项的非常详细的博客文章,还有一个代码示例可以运行: