现在要做一个注册  不能加上类似验证码的东西 但是还要做到 防止被刷注册用户  怎么才能做到呢 要那种不需要用户额外操作的  起不起到很大作用没关系 只要能起到作用就好  最起码 达到  不会被很简单的  刷用户
    怎样才能实现呢 想了好久 没结果

解决方案 »

  1.   

    动态字段名,也就是表单不是
    <input name="userName" value="..." />
    而是
    <input name="gpX35t8L" value="..." />
    具体字段的名字只有服务端知道,而且字段顺序不固定,可能是
    用户:____________
    邮箱:____________
    密码:____________
    也可能是
    邮箱:____________
    用户:____________
    密码:____________
    其中“邮箱”等label是随机路径的图片<img src="servelt?id=x3lGslt" />
      

  2.   

    http://www.wzsky.net/html/Program/jsp/81255.html
      

  3.   

    记录请求注册地址IP 一天只能注册20个虽然人家可以改IP~ 蹩脚的需求~
      

  4.   

    那程序可能会先去解析这个 XML 获得 name 后再操作。
      

  5.   

    token 并非struts的东东吧 自己也可以实现
      

  6.   

    这是最简单的了,说这个自己实现也可以,但是struts已经做得差不多了满足你这个问题是没问题了,也没什么麻烦的,如果是struts2的话,
    第一步:在表单中加入<s:token />
    <s:form action="helloworld" method="post" namespace="/test">
      <s:textfield name="person.name"/><s:token/><s:submit/>
      </s:form>
    第二步:加入拦截器 <interceptor-ref name="token" /> ,还要加入默认的拦截器
    <action name="helloworld_*" class="cn.itcast.action.HelloWorldAction" method="">
           <interceptor-ref name="defaultStack" />
            <interceptor-ref name="token" />
            <result name="invalid.token">/WEB-INF/page/message.jsp</result>  
            <result>/WEB-INF/page/result.jsp</result>  
    </action>
      

  7.   

    兄台这个思路不错,我很喜欢。但是这个放置不了 模拟的http请求恶意注册。
      

  8.   

    SESSION存上次注册的时间,和这次的时间相比,间隔太短就不让注册。
      

  9.   

    突破口就是:
    如何能防止模拟http请求的恶意攻击。
      

  10.   

    建议你研究下这个游戏网站的注册
    http://www.ucjoy.com/main/Qreg.html
    模拟他ajax的注册请求被403了
      

  11.   

           注册用户的时候 你可以根据邮箱 用户名 和电脑的ip地址 进行验证   重复注册肯定是不行的  那么你就获取别人电脑的ip地址  request.getRemoteAddr()//获取远程IP地址     如果是同一个ip多次进行注册    就不让他注册  邮箱也可以进行判断  这些都可以根据你的需求来做
      

  12.   


    token不是防止重复提交的吗?   跟楼主问的什么关系?
      

  13.   

    那程序可能会先去解析这个 XML 获得 name 后再操作。哪里来的XML啊
      

  14.   

    另外,我这个的思路,就是将用户看到的,需要手工输入的验证码,转换为字段名称——不是input name="xxx"里面的xxx,而是<label>Yyy:<input ...</label>里面的Yyy——而且图片的样子随机,顺序随机,且控件名称也随机。也就是说,原先要解析一次CAPTCHA的,现在可能需要解析N次,出错概率大幅提升。当然,这个都只是理论上的。最后,还有种方法,就是注册不直接激活,而需要发送激活邮件。每个邮箱只能激活一次,而且,仅接受几个大的服务商的邮箱地址(这类服务商注册的时候,已经有防恶意注册机制了)