Edited at

WKWebView の POST の httpBody が nil になる

More than 1 year has passed since last update.

nil になるのは2つパターンがあります


WKWebView の load(_ request: URLRequest)に POSTメソッドでhttpBodyを設定したURLRequestを渡しても、 httpBodyがnilとしてリクエストされてしまう

iOS10以下で発生しているバグです。

iOS11では解決しています。

iOS10以下でも場合によっては解決策がないこともないですが、アプリのデザインを見直して解決したほうが良いかと思われます。


WKNavigationDelegate で navigationAction.request がPOSTメソッドのとき httpBody が nil になる

func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void)

こちらは iOS11 でも引き続き nil になります。requestに介入できないようにあえてそうしているのかもしれません。