简体   繁体   中英

HTTP POST Data unreadable until client closes

I am trying to make a web server in ruby using socket for experimentation, and I am unable to get the payload from a post request until the client closes. Then, I can not send any data back when the client does close.

Code:

require "socket"
server = TCPServer.new($HOST, $PORT)
client = server.accept
while true
    puts client.gets
#Prints all headers and request but I don't see the actual payload (key=value) until the client disconnects.
end

By using if line.chomp.length == 0 to get the end of the headers and client.read() for the data, I can get the data.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM