注册 登录
编程论坛 Python论坛

python socket 一个connect链接,请求两次不同的接口,返回值却是重复的第一次返回值

xg6677 发布于 2018-10-26 15:13, 1646 次点击
如题

我使用一个connect
程序代码:
def connect_server():
    HOST = globalconf.glconf["host"]
    PORT = globalconf.glconf["port"]
    ADDR = (HOST, PORT)
    tcpclient = socket(AF_INET, SOCK_STREAM)
    tcpclient.connect(ADDR)
    return tcpclient

ob = connect_server()

发送和接收消息我放在一个函数里了
程序代码:
def send_tcpclient(ob,info):
    ob.send(info)
    BUFSIZ = 1024
    ret = ob.recv(BUFSIZ)
    # print (unpacks(ret))
    return unpacks(ret)

也使用过发送一个函数,接收一个函数
程序代码:
def send_tcpclient(ob,info):
    ob.send(info)

def recv_tcpclient(ob):
    BUFSIZ = 1024
    ret = ob.recv(BUFSIZ)
    #print (unpacks(ret))
    return unpacks(ret)

遇到的问题
因为是一个长连接,所以我用了一个connect并实例给了ob,上图有显示
然后我分别请求两个不同的接口
只有本站会员才能查看附件,请 登录

但是返回的值确实相同的,都是第一个请求的值
{'stateCode': 0, 'stateDesc': None}
{'stateCode': 0, 'stateDesc': None}
通过服务端日志发现,第二次请求时,请求正常发送到服务端了,但是服务端返回的还是第一次请求的返回值
只有本站会员才能查看附件,请 登录

可以看到第一个接口定义的7108正确返回了7108-2返回值,但第二个7101发送后,却返回的还是7108-2第一个返回值
请大神帮看下,我是tcp一个connect的逻辑不对,还是我请求的方法有问题呢
0 回复
1