套接字服务器端函数返回“';dict';对象不可调用";python
我在客户端和服务器之间有一个套接字。 服务器可以访问有关约会的数据库,并检查约会的状态是否未知,然后将其发送给客户端,客户端可以访问本地API 服务器端:套接字服务器端函数返回“';dict';对象不可调用";python,python,sockets,dictionary,encoding,Python,Sockets,Dictionary,Encoding,我在客户端和服务器之间有一个套接字。 服务器可以访问有关约会的数据库,并检查约会的状态是否未知,然后将其发送给客户端,客户端可以访问本地API 服务器端: context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER) context.load_cert_chain('','') sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM,0) sock.bind(('0.0.0.0',8443)) sock.
context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
context.load_cert_chain('','')
sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM,0)
sock.bind(('0.0.0.0',8443))
sock.listen(5)
print('Server Listening')
ssock = context.wrap_socket(sock,server_side=True)
conn,address = ssock.accept()
datatype = "appointment"
def status_check(code,purpose)
codeDic = {'1001':'CX', .... }
stat = codeDic(code)
if stat = 'Yes':
if purpose.find('repair')!=-1:
stat = 'RP'
return stat
if datatype == "appointment":
x = 'NYIs'
xst = x.encode()
conn.send(xst)
for appt in data:
st = repr(appt)
encoded = st.encode()
conn.send(encoded)
rec = conn.recv(2048)
rec = rec.decode("UTF-8")
rec = eval(rec)
if rec!='none':
print(rec.keys())
print(rec.values())
statuscode1 = str(rec.get("status"))
purpose1 = str(rec.get("purposeofvisit"))
status1 = status_check(statuscode1,purpose1) \\\This line cause the error
x= 'done'
xst = x.encode()
conn.send(xst)
appointments.append(data)
客户:
if x=='NYIs':
while x!='done':
appt = ssock.recv(1024)
appt = appt.decode("UTF-8")
try:
appt=eval(appt)
PARAMS = {'limit':'10','date':appt[2].strftime('%m-%d-%Y'),'firstname':appt[1],'lastname':appt[2]}
r = requests.get(url=URL, params=PARAMS, timeout =10)
if r:
data = repr(r.json()[0])
else:
data = repr('none')
encoded = data.encode()
ssock.send(encoded)
except NameError:
appt=appt
x=appt
stat=codeDic(code)
应该是stat=codeDic[code]
stat=codeDic(code)
应该是stat=codeDic[code]