From: Robert Klemme Date: 2006-12-30T02:55:06+09:00 Subject: Re: how to properly format data when using TCPSocket.send() On 29.12.2006 18:44, Nathan Taylor wrote: > It would be greatly appreciated if someone would clue me in to what I am > doing wrong here. I am trying to send this data below to httpd(Apache) > however I am receiving a http response code of 400 (bad request). > Apache is logging "request failed: error reading the headers" in > error_log, however if I replace the \r\n with \x0d\x0a and send this > through netcat to Apache I get the proper response code I am looking > for. > > > http_socket = TCPSocket.new("#{i}", 80); http_socket.send("PUT > /puttest.html HTTP/1.0\r\nHost: #{i}\r\nConnection: > close\r\nContent-type: text/html\r\nContent-Length: > 309\r\nSee Spot Run!See Spot > Run!See Spot Run!\r\n\r\n", 0) You need "\r\n\r\n" to separate the header from the body. Your code shows just a single pair. Btw, why don't you use Net::HTTP? robert