Me revoila avec mon jva \o/
On change totalement de sujet, plus d'image, de couleurs...
Maintenant j'ai un souci de socket qui me parait pour ,le poins très étrange !
En fait, j'ouvre ma connexion socket sur le port 80, j'envoie les données au serveur, et je recois les données. C'est la que la bas blesse !
Après une paire de test sur différents serveurs et pages, on dirait que la reception des données ne se fait pas tout le temps.
Je m'explique : si la page est trop petite (pas assez de caractère/lignes on dirait), ma socket ne recoit qu'une réponse 200 du serveur et rien d'autre, alors que sur des grandes pages, je recois toutes les données html...
Je vois d'où peut venir le probleme !
Voila le code du socket et de la reception des données (les objets sont instanciés plus haut dans le code)
public void connexion()
{
try
{
sock = new Socket (url, 80) ;
envoyer = sock.getOutputStream () ;
envoi = new BufferedWriter (new OutputStreamWriter (envoyer)) ;
envoi.write ("GET /notes.php HTTP/1.1") ;
envoi.newLine() ;
envoi.write ("Host: "+url) ;
envoi.newLine() ;
envoi.write ("User-Agent: The lsd Bot") ;
envoi.newLine() ;
envoi.write ("Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5") ;
envoi.newLine() ;
envoi.write ("Accept-Language: en-us,en;q=0.5") ;
envoi.newLine() ;
envoi.write ("Accept-Encoding: gzip,deflate") ;
envoi.newLine() ;
envoi.write ("Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7") ;
envoi.newLine() ;
envoi.write ("Keep-Alive: 300") ;
envoi.newLine() ;
envoi.write ("Connection: keep-alive") ;
envoi.newLine() ;
envoi.newLine() ;
envoi.flush() ;
}
catch (Exception e)
{
System.out.println (e) ;
}
}
public void recevoir ()
{
try
{
reception = sock.getInputStream () ;
recoit = new BufferedReader (new InputStreamReader (reception)) ;
while (reception.read() != -1)
{
String ligne = recoit.readLine() ;
System.out.println (ligne) ;
}
}
catch (Exception e)
{
System.out.println (e) ;
}
}
Enjoy
The lsd