J'essaie d'accomplir quelque chose de très simple, mais je n'ai trouvé aucune bonne documentation à ce sujet. J'ai un webView, et j'ai besoin de charger une page qui nécessite des données POST. Cela ressemble à un processus simple, mais je n'arrive pas à trouver un moyen d'afficher le résultat dans un WebView.Android Webview POST
Le processus doit être simple:
requête (avec des données POST) -> webserver - réponse> HTML -> WebView.
Je peux soumettre des données en utilisant un DefaultHttpClient, mais cela ne peut pas être affiché dans un WebView.
Des suggestions?
Beaucoup Merci
Solution
private static final String URL_STRING = "http://www.yoursite.com/postreceiver";
public void postData() throws IOException, ClientProtocolException {
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("foo", "12345"));
nameValuePairs.add(new BasicNameValuePair("bar", "23456"));
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(URL_STRING);
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
String data = new BasicResponseHandler().handleResponse(response);
mWebView.loadData(data, "text/html", "utf-8");
}
J'ai un morceau de code assez similaire à celui-ci, mais je n'ai aucune idée de comment relier cela avec un WebView. Si ce n'est pas trop de problèmes, pourriez-vous poster un extrait d'un WebView en utilisant ce morceau de code? Merci –
Une fois que vous avez les données, voulez-vous simplement afficher les résultats dans 'WebView', ou voulez-vous que l'utilisateur continue à cliquer sur des liens? Je crois qu'une fois que vous chargez des données d'un 'String' vous ne pouvez pas interagir avec lui. Elaborer un peu plus.;-) – TJF
Tout ce que je veux vraiment faire est de soumettre des données POST faire une page, puis afficher la page résultante à l'utilisateur –