Conexíon Cliente/Servidor - Sanko

Iniciado por Sanko, Septiembre 05, 2012, 06:18:25 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Septiembre 05, 2012, 06:18:25 PM Ultima modificación: Julio 31, 2014, 10:20:35 PM por Expermicid
Bueno , aquí ando practicando con sockets y decidi armar una conexión cliente/servidor sencilla para que otros puedan usar esta base para futuros proyectos.

Asi que aqui dejo la base del Cliente :

Código: ruby
#Coded by Sanko
require 'socket'
print "Escriba el host al que conectarse : \n"
host = gets.chomp # Indicamos host
print "Escriba el puerto al que conectarse : \n"
puerto = gets.chomp # Indicamos puerto
sock = TCPSocket.open(host, puerto) #Nos conectamos al host indicado escuchando el puerto indicado

while line = sock.gets
puts line.chop
end
sock.close #cerramos conexion


Aqui dejo la base del Server :

Código: ruby
#Coded by Sanko
require 'socket'
server = TCPServer.open(85) # Nos conectamos por el puerto 85 POR DEFAULT , se puede cambiar
loop { #Creamos un bucle con FINAL , se peuden hacer infinitos , Imaginaros para que ;)
Thread.start(server.accept) do |cliente| # Iniciamos la conexion cliente-servidor
cliente.puts(Time.now.ctime)
cliente.puts 'Prueba de conexion cliente - servidor | Sanko | Ruby' #Enviamos un texto
cliente.close #Cerramos conexion
end
}


A partir de ahí podeís ir añadiendo mas cosas , etc.

Por ejemplo que el cliente genere al servidor :

Código: ruby
#Coded by Sanko
require 'socket'
print "Escriba el host al que conectarse : \n"
host = gets.chomp # Elejimos host
print "Escriba el puerto al que conectarse : \n"
puerto = gets.chomp #Elejimos puerto

File.open('server.rb', 'w') do |config| #Abrimos/Creamos "server.rb"
#Lo modificamos para que dentro de ese archivo se escriba el codigo del server
config.print"
require 'socket'
server = TCPServer.open(85)
loop {
Thread.start(server.accept) do |cliente|
cliente.puts(Time.now.ctime)
cliente.puts 'Prueba de conexion cliente - servidor | Sanko | Ruby'
cliente.close
end
}"
end


print "Servidor creado correctamente , por favor ejecute server.rb como su \n"
print "Ahora pulse enter para continuar \n"
cualquiertecla = gets.chomp # pulsamos enter


sock = TCPSocket.open(host, puerto) #Nos conectamos a host y puerto

while line = sock.gets
puts line.chop
end
sock.close #Cerramos conexion


Y tambien muchas otras cosas , las cuales no dire ya que si no tal vez JODAIS mis proyectos...
Es cosa de IMAGINACIÓN , nada mas...

Una vez ejecutado queda :



Un saludo y sigan dandole al ruby , tiene futuro.

Sigueme en Twitter : @Sankosk
Estos nuevos staff no tienen puta idea XD