HTTP/1.1 200 OK
,
y su propio mensaje. El cuerpo de este mensaje suele ser el recurso
solicitado, aunque puede que se trate de un mensaje de error u otro tipo de información.
Veamos un ejemplo. Usemos este servidor:
[~/local/src/ruby/sinatra/rack/rack-debugging]$ cat hello1.rb require 'rack' class HelloWorld def call env [200, {"Content-Type" => "text/plain"}, ["Hello world"]] end end Rack::Handler::WEBrick::run HelloWorld.new
[~/local/src/ruby/sinatra/rack/rack-debugging]$ ruby hello1.rb [2013-09-23 15:16:58] INFO WEBrick 1.3.1 [2013-09-23 15:16:58] INFO ruby 1.9.3 (2013-02-22) [x86_64-darwin11.4.2] [2013-09-23 15:16:58] INFO WEBrick::HTTPServer#start: pid=12113 port=8080
Arrancamos un cliente con telnet con la salida redirigida:
[~/local/src/ruby/sinatra/rack/rack-debugging]$ telnet localhost 8080 > salida
Escribimos esto en la entrada estandard:
GET /index.html HTTP/1.1 Host: localhost Connection: closecon una línea en blanco al final. Este texto es enviado al servidor.
El cliente deja su salida en el fichero salida
:
[~/local/src/ruby/sinatra/rack/rack-debugging]$ cat salida Trying ::1... Connected to localhost. Escape character is '^]'. HTTP/1.1 200 OK Content-Type: text/plain Server: WEBrick/1.3.1 (Ruby/1.9.3/2013-02-22) Date: Mon, 23 Sep 2013 14:33:16 GMT Content-Length: 11 Connection: close Hello worldEl cliente escribe en la salida estandard:
Connection closed by foreign host.
Casiano Rodriguez León 2015-01-07