仿制优酷系统:tcp_server、tcp_client

优酷客户端:

功能:

1、Admin界面:

  1.register

    输入用户名密码,写一个字典,字典里面有{'type','name','password','user_type':用户类型}然后通过 client.send(struct.pack) 过去服务端,解包接收返回一个back_dic 打印结果;

  2.login

    用户输入用户

    

  3.upload_movie

  4.delete_movie

  5.release_notice

2、User界面:

优酷服务端:

接收用户发过来的数据,然后通过数据库进行操作;

lib>common:

登陆装饰器:

  login_auth(user_dic,conn): 接收用户的信息与use_data.alive里面的session做校验,成功的话:把user.id拿到

判断user.id存在就返回数据;

1、common_interface接口(通用功能)

注册:用户发送数据过来,然后通过common判断用户名存在不,存在返回失败的back_dic,不存在的话直接调用models.User(.....).save(),返回注册成功给客户端;

登陆:用户发用数据过来,然后判断用户是否存在,存在的话就进行校验,生成一串session字符串,然后和user_id一起放入use_data.alive{'addr':{'session':user.id}}里面,通过back_dic['session'] = session 把session返回到客户端;

如果是user登陆的话,就需要返回is_vip和最后的notice给客户端;

查看所有视频:@common.login_auth先通过数据库查看所有的视频,如果有视频,创建一个空的视频列表back_movie,通过过用户发送过来的请求 movie_type,如果是'all'就返回所有视频[movie.name 免费 if movie.is_free else 收费],is_free的话返回免费视频[movie.name,'收费',movie.id],else就返回收费视频[movie.name,收费,movie.id];

如果back_movie里面有视频就返回返回看成功,返回back_dic里面加上视频;

2、admin接口

猜你喜欢

转载自www.cnblogs.com/kermitjam/p/9114514.html