V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kitalphaj
V2EX  ›  程序员

有人对微信公众号文章投票有研究么

  •  
  •   kitalphaj · 2016-05-20 07:43:21 +08:00 · 8831 次点击
    这是一个创建于 3110 天前的主题,其中的信息可能已经有所发展或是发生改变。

    不知道大家有没有遇到过家人参加某个投票活动,然后因为你是程序员所以觉得你应该可以帮忙刷票之类的事情。。。虽然我知道客观上这种刷票行为既浪费时间又破坏公平,但是毕竟是家里人的事,如果能帮上忙我也愿意去做。

    我对微信的投票系统没什么研究,前几天测试投票的时候抓了下包,仅仅发现了疑似 API 的请求:

        https://mp.weixin.qq.com/mp/newappmsgvote
        
        // 参数大概有这些:
        action=vote
        __biz=...
        uin=...
        key=...
        pass_ticket=...
        f=json
        json={...}
        idx=1
        mid=...
        wxtoken=...
    

    谷歌也搜了, github 也搜了,结果并不多,所以想请教一下是否有大神对这方面有所研究并且愿意分享一下发现?

    16 条回复    2016-05-20 11:19:17 +08:00
    supersf
        1
    supersf  
       2016-05-20 07:51:13 +08:00
    关注下…
    des
        2
    des  
       2016-05-20 08:14:30 +08:00 via Android
    微信投票基本无解,是有验证 id 的
    kitalphaj
        3
    kitalphaj  
    OP
       2016-05-20 08:18:38 +08:00
    @des 嗯,我之前看到一个博客有说过是绑定 id 的。但是据说(仅仅是据说),有些投票仅仅是用微信服务器做中转,实际上后面的服务器是那些人自己的,所以如果能通过什么方法找到后面那个真正的服务器,就可以直接发请求去那个服务器。而后面那个服务器没法验证 id ,所以只需要随机 id 就好了。。。。
    janxin
        4
    janxin  
       2016-05-20 08:25:38 +08:00 via iPhone
    @kitalphaj 微信官方有提供投票功能,自己实现的那些除外
    jarlyyn
        5
    jarlyyn  
       2016-05-20 08:31:30 +08:00 via Android
    @kitalphaj

    微信提供 oauth 的第三方登录的

    你想多了
    JiShuTui
        6
    JiShuTui  
       2016-05-20 08:35:06 +08:00
    楼主方向就错了,微信内投票有两种,一种是直接公众号发文章提供嵌入官方投票插件,另一种是第三方网页投票。
    这两种,都是用 openid 来做投票唯一验证的。

    当然不排除有些第三方网页偷懒不做验证,但是可以告诉你, 90%以上的都有验证的,因为他们举办投票活动其实就是为了让参与者找人刷票,然后他们设置了必须关注后才能投票,所以最终目的都是为了增粉。
    arens
        7
    arens  
       2016-05-20 08:36:05 +08:00
    官方那个投票貌似刷不了吧
    JiShuTui
        8
    JiShuTui  
       2016-05-20 08:37:52 +08:00
    微信内刷票的唯一办法就是用很多很多的微信号去投票,既可以找很多人人肉投票,也可以用程序去投,但是前提条件都是需要很多微信号。
    kitalphaj
        9
    kitalphaj  
    OP
       2016-05-20 08:46:53 +08:00
    @JiShuTui 难怪我看淘宝上有卖这个刷票服务的。
    ytmsdy
        10
    ytmsdy  
       2016-05-20 08:47:13 +08:00
    直接淘宝吧。这投票肯定要用大量的微信账号关注,然后才能投票。
    ebony0319
        11
    ebony0319  
       2016-05-20 08:52:27 +08:00 via Android
    关一下
    sunfanteng
        12
    sunfanteng  
       2016-05-20 09:07:37 +08:00
    楼主,我就是做投票的。基本上都是通过微信的 Oauth ,来判断用户的 Openid 的。整个流程除非你有很多的微信号,不然基本上不可能刷票的。
    zktz
        13
    zktz  
       2016-05-20 09:14:22 +08:00
    我同事雇过人肉刷票, 2 毛 5 一票,赔了 1 万多。规则是刷到第一的,奖励 1 万块钱的舞蹈课。
    kitalphaj
        14
    kitalphaj  
    OP
       2016-05-20 09:15:20 +08:00
    @sunfanteng 原来是 Openid ,之前没研究过,赶紧去学习一下。
    changwei
        15
    changwei  
       2016-05-20 09:42:31 +08:00
    oauth 登录都有个 openid ,这个 openid 相当于你的微信号或者 QQ 号之类的参数进行 hash 之后的结果,为什么微信不直接给开发者显示微信号而要用 openid 来标识用户呢呢,据说是防止其他人获取到你的微信号泄露隐私之类的。所以综上所述,你仍然还是需要很多微信号。
    IMRES
        16
    IMRES  
       2016-05-20 11:19:17 +08:00 via Android
    @zktz 太惨了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   994 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:59 · PVG 06:59 · LAX 14:59 · JFK 17:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.