码迷,mamicode.com
首页 > 其他好文 > 详细

网络编程- socket_server_登录demo

时间:2019-05-02 09:28:16      阅读:86      评论:0      收藏:0      [点我收藏+]

标签:close   self   load   font   base   imp   bsp   sel   thread   

userinfo文件

alex|aee949757a2e698417463d47acac93df

 

 

server_login

import json
import hashlib
import socketserver
def md5_pwd(user,pwd):
md5_obj = hashlib.md5(user.encode(‘utf-8‘))
md5_obj.update(pwd.encode(‘utf-8‘))
ret = md5_obj.hexdigest()
return ret

def login(userinfo):
user_dic = json.loads(userinfo)
passwd = md5_pwd(user_dic[‘username‘], user_dic[‘passwd‘])
with open(‘userinfo‘) as f:
for line in f:
user, pwd = line.split(‘|‘)
if user_dic[‘username‘] == user and passwd == pwd:
print(‘登录成功‘)
break

class MyServer(socketserver.BaseRequestHandler):
def handle(self):
userinfo = self.request.recv(1024).decode(‘utf-8‘)
login(userinfo)

server = socketserver.ThreadingTCPServer(
(‘127.0.0.1‘,9000),
MyServer)
server.serve_forever()

 

client_login

import json
import socket
ADDR = (‘127.0.0.1‘,9000)
def get_socket():
sk = socket.socket()
sk.connect(ADDR)
return sk
# 输入账号
username = input(‘username >>>‘)
passwd = input(‘password >>>‘)
if username.strip() and passwd.strip():
sk = get_socket()
dic = {‘username‘:username,‘passwd‘:passwd}
str_dic = json.dumps(dic)
sk.send(str_dic.encode(‘utf-8‘))
sk.close()
# 连接socket

网络编程- socket_server_登录demo

标签:close   self   load   font   base   imp   bsp   sel   thread   

原文地址:https://www.cnblogs.com/mys6/p/10801516.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!