WKWebViewのインスタンスそのものはrequestを持ちませんが、WKWebViewで発生するイベントごとにWKNavigationDelegateからrequestを参照できます。
例えば、発生しようとしている通信に対して、実際に発生させるか止めるかを決めることができる
webView:decidePolicyForNavigationAction:decisionHandler: | Apple Developer Documentation
では、
objc
1- (void)viewDidLoad {
2 [super viewDidLoad];
3 self.webView.navigationDelegate = self;
4 self.webView.uiDelegate = self;
5}
6
7- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler {
8 // 指定したドメインへの通信のみ許可する
9 if([navigationAction.request.URL.host hasSuffix:@"your.trusted.domain"]) {
10 decisionHandler(WKNavigationActionPolicyAllow);
11 return;
12 }
13 // それ以外は弾く
14 NSLog(@"Access to %@ has been canceled.", navigationAction.request.URL.absoluteString);
15 decisionHandler(WKNavigationActionPolicyCancel);
16}
のようにすることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。