java - temporarily - HttpResponse code 302
status 302 moved temporarily http injector (1)
Un HTTP 302 es un ''redireccionamiento temporal'' . Necesitas manejarlo.
Según el estándar, si obtiene una respuesta 302, la respuesta contendrá un campo de encabezado ''Ubicación'' con la redirección:
Client request:
GET /index.html HTTP/1.1
Host: www.example.com
Server response:
HTTP/1.1 302 Found
Location: http://www.redirected-address.example.com/
Debe extraer la nueva URL de la respuesta. (Use getHeaderField("Location")
para hacer esto). Luego ejecuta el mismo método en la nueva URL que obtuviste.
Otros dos puntos:
Como se trata de una redirección ''temporal'', no puede almacenar esta nueva URL. Deberías seguir usando el anterior, y si devuelve un 302, utiliza la URL que esté en ''Ubicación''.
Si no está ejecutando un GET o HEAD, no debe hacer el redireccionamiento automáticamente. En cambio, solicite la intervención del usuario. El RFC requiere esto .
Estoy usando el simulador BB 8900. Estoy tratando de conectarme a la URL y obtener el código de respuesta 302. ¿Qué significa? Aquí está mi fragmento de código:
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
.....
connection = (HttpConnection)Connector.open(url);
responseCode = connection.getResponseCode();