Je travaille actuellement sur un serveur proxy simple, qui reçoit une requête http du navigateur, le traite, puis le transmet au serveur web désiré.Java socket programming - stream get bloqué
J'essaie d'obtenir la requête du flux d'entrée de la socket connectée par le navigateur, tout va bien sauf que le flux reste bloqué après avoir reçu le dernier bloc de données.
Mon code est en fait très simple, comme le montre ci-dessous:
ServerSocket servSocket = new ServerSocket(8282);
Socket workSocket = servSocket.accept();
InputStream inStream = workSocket.getInputStream();
byte[] buffer = new byte[1024];
int numberRead = 0;
while ((numberRead = inStream.read(buffer, 0, 1024)) != -1){
System.out.println(new String(buffer));
}
La boucle ne peut tout simplement pas sortir, même la réception de la demande est terminée.
Existe-t-il une méthode pour contourner ce problème?
Merci d'avance pour tout conseil.
vous devez fournir les détails, et probablement aussi le code source, pour nous permettre de trouver le problème. –
Le code ajouté, s'il vous plaît avis. –
Pourquoi ne pas simplement configurer Apache HTTPD et mod_proxy? – pjp