Android Http obtener la sesión de cookies
Realmente no quería publicar aquí, ya que hay tanta información en la red, pero he arrastrado las profundidades y no puedo entenderlo.
Ok, así que no puedo conseguir que esto funcione en dos hipótesis, esperemos que la respuesta es la misma para ambos.
- Retrofit 2: responseBodyConverter convierte a objeto nulo
- Retrofit 2.0 cómo imprimir la respuesta json completa?
- Cómo configurar una cookie para una Http Get Request?
- Cómo hacer HttpResponse trabajo más rápido?
- ¿Cómo enviar datos multipart / form a un servidor web desde android?
Mi problema es que fijo el encabezado de la petición pero no parece enviarlo.
Tengo una sesión id s = e32ff223fwefd3, y quiero almacenar esto en "Cookie", pero no parece estar funcionando.
Aquí está el ejemplo de código más rápido que tengo
import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.HttpResponse; private static String sessionCookie = "s=12342342352354234"; public static void get(String url) { HttpClient client = new DefaultHttpClient(); HttpGet request = new HttpGet(url); if(sessionCookie != null){ Log.d(TAG, "Setting Cookie: "+sessionCookie); request.setHeader("Cookie", sessionCookie); } else { Log.i(TAG, "Null session request get()"); } HttpResponse response = client.execute(request); Header[] headers = response.getAllHeaders(); for (int i=0; i < headers.length; i++) { Header h = headers[i]; Log.i(TAG, "Header names: "+h.getName()); Log.i(TAG, "Header Value: "+h.getValue()); } }
Así que cuando mi respuesta sale por el otro lado no tiene mi s = 232342w3f23f id adjunto a ella!
Creo que he explicado este derecho, cualquier ayuda es apreciada
- Cómo hacer http obtener solicitud en Android
- ¿Cuál es la mejor práctica para hacer llamadas http en android
- Cómo mantener las cookies de sesión HTTP en HttpContext entre las actividades en Android?
- Android API 23 Paquetes eliminados
- Solicitud httpget con auth
2 Solutions collect form web for “Android Http obtener la sesión de cookies”
Ok el código anterior realmente funciona, sólo no recuperar el encabezado correctamente para ver todos los campos. El problema era que tenía una Id de sesión no válida, pero el servidor web que estaba usando tiene el peor mecanismo de manejo de errores 🙂 gracias por escuchar!
Pruebe getCookieStore().addCookie()
en su objeto DefaultHttpClient
, antes de enviar la solicitud.
- Codificación de URL no compatible
- Subida de imagen de Base64 VS ¿Subida de imagen binaria?
- Android AsyncHttpClient - "Content-Type not allowed!" Al descargar archivos
- ¿Cómo puedo imprimir / registrar contenido de cuerpo entero de MultiPartEntity que está siendo utilizado por HTTPRequest?
- Cadena de escape de EditText
- ¿Cómo supervisaré las solicitudes Http de Pokemon Go?
- Cómo interceptar datos HTTP POST desde un formulario web
- Con Android KitKat chrome: // inspecciona / monitoriza la red de dispositivos, cómo ver todos los datos de la solicitud
- Cómo comprobar rápidamente si el servidor de URL está disponible
- Enviar datos binarios a través de POST en android
- Las cookies no se almacenan en la API de Webview android 21 y superiores
- ¿Es posible incluir encabezados http en una solicitud de Google Docs?