Ruby HTTPd服务器输入
我在ruby中的服务器出现问题,我将请求设置为客户端或会话。gets so request=session.gets 但当发送的请求类似于:Ruby HTTPd服务器输入,ruby,http,server,Ruby,Http,Server,我在ruby中的服务器出现问题,我将请求设置为客户端或会话。gets so request=session.gets 但当发送的请求类似于: GET / HTTP/1.1\r\n HOST: 192.168.2.4\r\n User-Agent: Mozilla/5.0\r\n Accept: text/xml,text/html,text/plain,image/jpeg\r\n Accept-Language: en-us,en\r\n 然后请求只返回第一行。如果我这样做: request
GET / HTTP/1.1\r\n
HOST: 192.168.2.4\r\n
User-Agent: Mozilla/5.0\r\n
Accept: text/xml,text/html,text/plain,image/jpeg\r\n
Accept-Language: en-us,en\r\n
然后请求只返回第一行。如果我这样做:
request1 = session.gets
request2 = session.gets
request3 = session.gets
request4 = session.gets
然后它会工作,但是如果我放置了一个过多的session.get,那么客户端将不会再输入任何行,并将停止服务器运行
有什么办法可以解决这个问题吗?不要使用gets。使用read或readlines。谢谢非常有效!:当然一般来说,除非您正在阅读标准文本,否则不要使用gets。使用read和readline更容易。另外,考虑一下HTTP库。除非你是为了实践而构建的,在这种情况下,很好的选择,使用预构建的库或服务器可能更容易,除非你构建自己的HTTP版本。不知道为什么你会这么做。谢谢,它按照我希望的方式工作,但服务器仍在等待更多信息,有什么建议吗?