fluttercommunity/flutter_webview_plugin

onHttpError called with a 200 code

Open

#414 aperta il 9 mag 2019

Vedi su GitHub
 (1 commento) (0 reazioni) (0 assegnatari)Java (919 fork)batch import
IOSbughelp wanted

Metriche repository

Star
 (1457 star)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

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.

Guida contributor