Antwort erforderlich.
Wichtiger Hinweis: Ich habe HTML-Dokument lokal im Localcache-Ordner. Ich öffne es in Webview mit ms-appdata://
Schema.
Geschichte der unendlichen Mühen (kann es einige, die Sie einige Zeit):
Wenn ich die POST-Anfrage gesendet, habe ich nichts. Ich bekomme WebView_NavigationStarting
Ereignis, aber der Uri wurde nur übertragen. Keine POST-Daten.
Ich versuche zu debuggen mit alert
. Nur um zu erkennen, dass alert
nicht funktioniert in WebView
.
Ich fand die Fehlerbehebung, die alert
funktioniert mit ScriptNotify
Ereignisse. Nur um zu erkennen, dass ScriptNotify
nicht mit ms-appdata://
Schema funktioniert. Also die Reparatur hat nicht so gut funktioniert.
Ich habe gelernt, wie Debuggen in VS, indem Sie auf Projekteinstellungen/Debug/Debugger Typ/Anwendungsprozess und wählen Sie "Skript". Dann wurde mir klar, dass ich in Visual Studio keine Haltepunkte in Skripts setzen kann. Und dann habe ich einen kleinen Hack gefunden - setzen Sie das Wort "Debugger"; in Ihrem JavaScript-Code und VS wird dort aufhören. Und Sie können mit F10/F11 debuggen. Oh ja Baby!
Dann gab ich schließlich auf und änderte es in GET-Anfrage. Nur um zu erkennen, dass es nur funktioniert, bis die Formulardaten ~ 2K überschreiten. Danach nichts. NavigationStarting
nie gefeuert, passiert einfach nichts.
schließlich hier die Lösung:
private async void WebView_NavigationStarting(WebView sender, WebViewNavigationStartingEventArgs args)
{
string result = await this.WebView.InvokeScriptAsync("eval", new string[] { "$('form').serialize()" });
}
Nicht wirklich elegant, aber es funktioniert !!! Und ich konnte 20K + auf diese Weise übertragen. Genau das habe ich gebraucht.
Haben Sie versucht, WebAuthenticationBrocker mit der Option WebAuthenticationOptions.useHttpPost zu verwenden? – Konstantin