发送请求的netty http服务器和python客户端只运行一次

时间:2015-07-13 06:52:32

标签: java python http netty

我使用netty和java创建了一个http服务器。它需要一个http请求才能登录用户。我使用为此目的创建的python控制台应用程序,使用用户名和密码作为参数向http服务器发出请求,服务器以json对象{"result":true}响应,例如成功登录。

我使用请求库来处理来自客户端的请求和响应。该请求有效,因为我得到了响应并且用户已经过身份验证并登录。但是当我尝试再次请求用户登录时,我没有收到回复。请求到达服务器并调用服务器的登录功能(我在控制台中可以看到)。但回应永远不会发生在客户身上。

command = raw_input()
while command != "exit":
    if command == "login":
        username = raw_input("Username:")
        password = raw_input("Password:")
        login_user(username, password)
    command = raw_input()

登录功能

def login_user(username, password):
    url = "http://10.154.196.99:8000/"
    url = url + 'login?username=' + username + "&password=" + password
    LOG.debug("logging in using url: " + url)
    response = requests.get(url)
    LOG.debug(response.status_code)
    if response.status_code == 200:
        print "Logged in successfully"
        LOG.debug(response.content)
    else:
        print "Login was unsuccessful"

我第一次成功登录,第二次挂断电话。服务器确实得到了响应。可能有什么不对?

编辑:刚刚注意到我在服务器端遇到以下异常

java.io.IOException: An existing connection was forcibly closed by the remote host

0 个答案:

没有答案