Establecer una cookie para un webView en Android
Estoy recibiendo un HttpResponse
de un servidor al comprobar si un nombre de usuario o contraseña es correcta. Cuando cargue la url
en una webview
, quiero que la webView
tenga la cookie (la respuesta que obtengo con postData()
almacenada en la webView
.) Quiero que la webView recoja la cookie y cargue la url con esa cookie almacenada en la webview.
Estoy recibiendo la respuesta.
- Configuración de cookies en WebView android
- Enviar inicio de sesión con POST con Android!
- Retrofit sigue olvidando mis cookies 🙁 Android
- Android: inicia sesión en el sitio web y conserva sesión / cookie mediante DefaultHttpClient
- URLConnection con Cookies?
public HttpResponse postData() { HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("https://example.com/login.aspx"); try { List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2); nameValuePairs.add(new BasicNameValuePair("txtUsername", "user")); nameValuePairs.add(new BasicNameValuePair("txtPassword", "123")); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); HttpResponse response = httpclient.execute(httppost); String responseAsText = EntityUtils.toString(response.getEntity()); Log.v(TAG , "Response from req: " + responseAsText); return responseAsText; } catch (ClientProtocolException e) { } catch (IOException e) { } return null; }
Y yo loadUrl con:
webView.loadUrl("http://a_page.com/getpage.aspx?p=home");
Supongo que en realidad no estoy manejando una cookie y no tengo ni idea de cómo hacerlo. ¿Alguna sugerencia o solución?
- Android WebView eliminarCookie
- Cómo obtener todas las cookies de CookieManager android?
- ¿Cómo mantener el inicio de sesión del servidor en toda la aplicación nativa de Android?
- C #: ModernHttpClient, Estás haciendo referencia a la versión Portable en tu aplicación: necesitas hacer referencia a la versión de la plataforma (iOS / Android)
- Cómo agregar cookies (encabezado) en la vista de vídeo de Android para admitir las versiones anteriores de android atleast till jellybean
- Android - ¿Cómo pasar la cookie para cargar url con webview?
- CookieSyncManager :: createInstance () necesita ser llamado antes de CookieSyncManager :: getInstance ()
- Mantener sesión de cookie en Android
Probablemente querrá echar un vistazo a esta solución: Android WebView Cookie Problem
Es muy simple.
String cookieString = "cookie_name=cookie_value; path=/"; CookieManager.getInstance().setCookie(baseUrl, cookieString);
Donde cookieString
tiene el mismo formato que un encabezado HTTP Set-Cookie
más tradicional, y baseUrl
es el sitio al que pertenece la cookie.
- GcmListenerService.onMessageReceived () no se ha llamado
- WebView oculta el teclado virtual durante loadUrl (), lo que significa que un teclado no puede permanecer abierto mientras llama a javascript