• 如何邀请好友注册您的网站(模拟百度网盘)


      花了一年时间做了个网盘下载站点,有兴趣的朋友可以看看站名:去转盘网其中有个需求是想模拟百度网盘的邀请好友注册功能,想了很久果然"皇天不负有心人",终于整理出个思路,并且附上代码,希望各位网友多多吐槽。我的思路大体是用网络范围内唯一的字符串uuid为标识去邀请好友,邀请者给个状态位1代表邀请者,并给他绑定个唯一uuid。被邀请者给个标识位0代表被邀请者,如果他注册成功,则可以根据邀请链接获得uuid去查询数据库找到邀请者,找到后给予相应积分即可,代码如下:
    public String invite(){
    
    int  invteOrBeInted=1;//邀请人为1,被邀请为0
    
    String username=null;
    
    String temp=getParameter("username");
    
    if(temp!=null){
    
    try {
    
    username = new String(temp.getBytes("ISO-8859-1"), "utf-8");
    
    } catch (UnsupportedEncodingException e) {
    
    e.printStackTrace();
    
    }
    
    }
    
    //username=((User)session.get(CodeConst.USERINSESSION)).getUsername();
    
    if(username==null){
    
    message="没有权限邀请用户";
    
    return ERROR;
    
    }
    
    RegisterService registerService = ServiceFactory.getRegisterService();
    
    UserDao userDao=null;
    
    try {
    
    userDao = registerService.getUserDao();
    
    } catch (Exception e1) {
    
    e1.printStackTrace();
    
    }
    
    @SuppressWarnings("rawtypes")
    
    java.util.List list=null;
    
    User u=null;
    
    try {
    
    list=userDao.findByUserName(username);
    
    } catch (Exception e) {
    
    e.printStackTrace();
    
    }
    
    if(list!=null&&list.size()>0){
    
    u=(User)list.get(0);
    
    }
    
    if(u.getInviteCode()!=null&&u.getInvitedOrBeInvited()==1){ //已经邀请了
    
    inviteCode=u.getInviteCode();
    
    }
    
    else{
    
    inviteCode=UUID.randomUUID().toString();//uuid的唯一性
    
    }
    
    String goodNews="网盘分享,网盘下载,这里是去转盘网。赶快点击下面链接注册吧,海量网盘资源与你共享";
    
    String url=goodNews+getBase()+"registerManager/inviteRegister.action?inviteCode="+inviteCode;
    
    //注释,这里getBase()函数请自己实现,是获得
    
    getHttpRequest().setAttribute("url",url);//发送给前台
    
    try {
    
    registerService.updateInviteMan(username, inviteCode,invteOrBeInted); //更新邀请人信息,注意inviteCode为uuid是唯一的
    
    //当用户注册成功之后根据inviteCode为邀请人加分
    
    } catch (Exception e) {
    
     
    
    e.printStackTrace();
    
    }
    
    return SUCCESS;
    
    }
    

      

      
  • 相关阅读:
    打印杨辉三角 --JS
    (hdu step 8.1.6)士兵队列训练问题(数据结构,简单模拟——第一次每2个去掉1个,第二次每3个去掉1个.知道队伍中的人数<=3,输出剩下的人 )
    黑马day16 jquery&属性过滤选择器
    JQuery学习(4-2-phpserver端1)
    微信企业号开发:启用回调模式
    Struts框架的国际化
    4、libgdx应用框架
    C++map类型 之 简单介绍
    图像处理与计算机视觉开源软件库及学习站点
    单例模式
  • 原文地址:https://www.cnblogs.com/huangxie/p/5465166.html
Copyright © 2020-2023  润新知