Pregunta

estoy frente a este problema con Java. Quiero obtener algunas informaciones HTML desde una URL. Este código estaba trabajando durante tanto tiempo, pero de repente, dejó de funcionar.

Cuando tengo acceso a esta dirección URL utilizando el navegador, se abre sin ningún problema.

El código:

URL site = new URL(this.url);
java.net.URLConnection yc = site.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(yc.getInputStream()));
String inputLine;
String objetivo = "<td height=\"28\" colspan=\"2\"";
while ((inputLine = in.readLine()) != null && !inputLine.contains(objetivo)) {
}
inputLine = in.readLine();

La Excepción:

java.io.IOException: Server returned HTTP response code: 500 for URL: http://www.myurl.com
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
    at Sites.websites.Site1.getData(Site1.java:53)
    at util.Util.lerArquivo(Util.java:278)
    at util.Util.main(Util.java:983)

Lo malo de? ¿El bloque de anfitrión me?

¿Fue útil?

Solución

estado HTTP de código 500 por lo general significa que la código de servidor web se ha estropeado. Es necesario determinar el código de estado usando antemano HttpURLConnection#getResponseCode() y en caso de errores, lea la HttpURLConnection#getErrorStream() lugar. Puede que saber contener información sobre el problema.

Si el anfitrión te ha bloqueado, se quiere tener conseguido un código de estado 4nn como 401 o 403.

Ver también:

Otros consejos

Este código de estado 500 es un error interno del servidor. Este código indica que una parte del servidor (por ejemplo, un programa de CGI) se ha estropeado o detectado un error de configuración.

Creo que el problema Does'nt mentira de su lado, sino más bien en el lado del servidor HTTP. los recursos que utiliza para el acceso pueden haber sido movido o se corrompe, o en su configuración solo pueden haber alterado o estropeado

He encontrado el mismo problema y ha encontrado la solución.

Se puede mirar dentro de la primera respuesta del servidor y ver si el servidor que envía una cookie.

Para comprobar si el servidor que envía una cookie, puede utilizar HttpURLConnection # getHeaderFields () y el aspecto de las cabeceras denominadas "Set-Cookie".

Si ya existente, aquí está la solución para su problema. 100% de Trabajo para este caso!

1 si ha funcionado para usted.

he tenido este problema es decir, funciona bien cuando se pega en el navegador, pero 505s cuando se hace a través de Java. Se trata simplemente de los espacios que necesita ser escapado / codificado.

El problema debe estar con los parámetros que está pasando (Debe pasar parámetros en blanco). Por ejemplo: http://www.myurl.com?id=5&name= Y comprueba si está manejando esto en el servidor al que está llamando.

Cambiar el tipo de contenido a "application / x-www-form-urlencoded", i resolvió el problema.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top