fluttercommunity/flutter_webview_plugin

onHttpError called with a 200 code

オープン

#414 opened on 2019/05/09

 (1 件のコメント) (0 件のリアクション) (0 人の担当者)Java (919 件のフォーク)batch import
IOSbughelp wanted

Repository metrics

Stars
 (1,457 個のスター)
PR merge metrics
 (30d に merged PR はありません)

説明

I'm using this plugin for a payment process (using a bank web interface). I first load a generated HTML page (given a Uri.dataFromString() with mimeType sets to text/html) that build a form that auto-submit with action field sets to the bank server URL (where you enter your credit card information).

This workflow works fine on Android but I'm having a strange behavior on iOS. Right after the state changed to WebViewState.startLoad (with the bank server URL), onHttpError is triggered with a HTTP 200 code.

I initially quit the webview when an error occur to show a message. So I add a test to avoid false error codes and the web page works fine despite the error.

My app use the latest version (0.3.5).

I would like to know what can cause this behavior, I tried to put breakpoints in Xcode to have more info directly from the WKWebView didFailNavigation (inside FlutterWebviewPlugin.m) but my breakpoint is never hit...

EDIT: Putting the breakpoint in WKWebView decidePolicyForNavigationResponse works. Reading the code inside this method I noticed that there is no test to determined if the response is effectively an error.

コントリビューターガイド