java - español - Cómo modificar el encabezado de un HttpUrlConnection
httpurlconnection post json (3)
Estoy intentando mejorar un poco el documento HTML de Java pero estoy teniendo problemas con HttpUrlConntion
. Una cosa es que algunos servidores bloquean una solicitud si el agente de usuario es una máquina virtual Java. Otro problema es que HttpUrlConnection
no establece el campo de encabezado Referrer
o Location
. Dado que varios sitios usan estos campos para verificar que se haya accedido al contenido desde su propio sitio, también estoy bloqueado aquí. Por lo que puedo ver, la única solución es reemplazar el manejador de URL del protocolo HTTP. ¿O hay alguna forma de modificar el controlador HTTP predeterminado?
Abra la URL
con URL.openConnection
. Opcionalmente lanzado a HttpURLConnection
. Llame a URLConnection.setRequestProperty
/ addRequestProperty
.
El valor predeterminado del encabezado User-Agent se establece desde la propiedad del sistema "http.agent"
. El PlugIn y WebStart le permiten establecer esta propiedad.
Resolví mi problema. Podemos simplemente enviar el encabezado a application / json y pasar el cuerpo como un objeto json. Eso simplemente resuelve el problema.
Si utilizas Apache HttpClient para administrar tu conectividad HTTP programática, obtienes una API extremadamente útil que hace que la creación de conexiones (y la reconexión automática opcional falle), estableciendo Encabezados, Publicaciones vs. Obtiene, métodos prácticos para recuperar el contenido devuelto y mucho más. .