J'ai un programme Ruby très simple qui fait office de "serveur d'écho". Lorsque vous vous connectez via telnet tout texte que vous tapez est renvoyé en écho. Cette partie fonctionne. Si j'ajoute une instruction 'putc' pour imprimer aussi chaque caractère reçu sur la console exécutant le programme, seul le premier caractère affiché est imprimé. Après cela, il continue à faire écho au client telnet, mais il n'y a rien d'imprimé sur la console.Comment afficher les caractères reçus via une socket?
Ce qui suit est un petit programme dépouillé qui présente le problème.
Je suis très nouveau à Ruby et j'ai probablement fait une erreur de débutant typique. Qu'ai-je fait de mal?
require 'socket'
puts "Simple Echo Server V1.0"
server = TCPServer.new('127.0.0.1', '2150')
cbuf = ""
while socket = server.accept
cbuf = socket.readchar
socket.putc cbuf
putc cbuf
end
Merci. Je savais que ce serait quelque chose d'évident que j'avais oublié. – Timm