Я интегрирую аутентификацию на основе SAML в приложение iOS через интеграцию WkWebview
.
когда я загружаю URL
(A для получения защищенного контента), он перенаправляется на другой (URL-адрес аутентификации), который пытается загрузить webview
.
но в webview
ничего не показывает.
import UIKit
import WebKit
class SamlLoginScreenViewController: UIViewController,WKUIDelegate {
@IBOutlet weak var wv_saml: WKWebView!
var webView: WKWebView!
override func loadView() {
let webConfiguration = WKWebViewConfiguration()
webView = WKWebView(frame: .zero, configuration: webConfiguration)
webView.uiDelegate = self
view = webView
}
override func viewDidLoad() {
super.viewDidLoad()
let myURL = URL(string:"https URL")//it redirect to another //URL e.g. www.login.com( which does not get loaded)
let myRequest = URLRequest(url: myURL!)
webView.load(myRequest)
}
}
Вы можете попробовать этот код -
import UIKit
import WebKit
class ViewController: UIViewController {
@IBOutlet var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let myURL = URL(string:"put Your link here")
let myRequest = URLRequest(url: myURL!)
webView.navigationDelegate = self as? WKNavigationDelegate
webView.load(myRequest)
}
//MARK: Hide status bar
override var prefersStatusBarHidden: Bool{
return true
}
}
Вы устанавливаете нулевой кадр для webView (webView = WKWebView(frame: .zero, configuration: webConfiguration)
), поэтому вы его не видите. Попробуйте установить правильный фрейм для webView и добавить его в качестве подвида, например:
webView = WKWebView(frame: view.bounds, configuration: webConfiguration)
view.addSubview(webView)
У меня такая же проблема. Я загружаю URL-адрес в WKWebView, но не могу. Как бы он ни загружался с помощью SFSafariViewController. Кадр я устанавливаю правильно. Не уверен, в чем проблема.
У меня такая же проблема. Я загружаю URL-адрес в WKWebView, но не могу. Как бы он ни загружался с помощью SFSafariViewController. Не уверен, в чем проблема