最近捣鼓的基于微信的领券系统 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
kopa
V2EX    分享创造

最近捣鼓的基于微信的领券系统

  •  
  •   kopa 2016-07-22 14:48:12 +08:00 4419 次点击
    这是一个创建于 3377 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用惯了美团的朋友想必都知道,购买一张代金券,付款 80 元抵 100 元。由于我是做美食类的自媒体,所以在想平常接触的商家既然都是发布广告,最主要的目的是引流。倒不如直接可以让商家送出一道免费菜式或者专享折扣,让感兴趣的人去领取。我采取的是收费策略,但是收取的仅 1-2 元,目的是筛选出真正愿意付费的人群(这钱不用到商家手上,同时也不想美团那样先付款)。能切实带动和提高到店消费的几率。

    不知道我说的是否够清晰,哈。大家可以看看

    项目是基于 CI 框架开发,打算开放出来一起捣鼓捣鼓。

    http://h5.imchaotan.com/coupon/index.php/Coupon/Coupon_index/Coupon_Get/bid/9 (因为好像上传不到二维码图片,所以就麻烦点啦)

    在微信打开网址即可。

    20 条回复    2016-08-19 00:34:11 +08:00
    UnisandK
        1
    UnisandK  
       2016-07-22 15:01:15 +08:00
    扫了直接是微信登陆,是啥都不知道,不敢乱授权

    kopa
        2
    kopa  
    OP
       2016-07-22 15:05:48 +08:00
    不是微信登陆,只是授权而已。我的级别可能还不能上传图片-_-引起你的担忧对不住了
    arens
        3
    arens  
       2016-07-22 15:11:05 +08:00
    CI 框架是啥~


    @UnisandK 权限在登陆时不是公开的吗,获取头像,昵称等,应该是最基本的授权吧?
    qiayue
        4
    qiayue  
    PRO
       2016-07-22 15:11:59 +08:00
    建议一进去先看到内容,点击领取按钮的时候去授权
    kopa
        5
    kopa  
    OP
       2016-07-22 15:14:20 +08:00
    @arens Codeigniter 轻量级 PHP 框架
    kopa
        6
    kopa  
    OP
       2016-07-22 15:15:21 +08:00
    @qiayue 因为我设计的时候逻辑是,通过获取授权后记录微信用户的 nickname ,领取的时候直接是微信支付。
    2b2b
        7
    2b2b  
       2016-07-22 16:11:01 +08:00
    看了下不错,开源吗?
    qiayue
        8
    qiayue  
    PRO
       2016-07-22 16:18:38 +08:00
    @kopa 跟我 4 楼说的不矛盾
    kopa
        9
    kopa  
    OP
       2016-07-22 16:56:47 +08:00 via iPhone
    如果大家觉得可以继续完善的就开源了,哈
    shellcodecow
        10
    shellcodecow  
       2016-07-22 17:02:51 +08:00
    我想咨询下 微信授权登陆的方式

    如果用户授权过期以后 检查和跳转的方式应该怎么弄
    alex321
        11
    alex321  
       2016-07-22 17:10:19 +08:00   1
    在用户没了解你是干什么的之前,强行获取用户信息,做授权都是耍流氓。
    如果真要,你可以用 basic 的方式,不用这种 user_info 的形式。前者对用户是透明的,顶多看到页面跳转了下,但并无明显感知;而后者是需要用户明确授权的,在对你毫无认知的情况下,就给你点这个授权按钮,产品业务设计上真心对用户心理预期把握不好呃。

    @shellcodecow 微信现在一次 user_info 授权好像有 7 天的有效期了。你判断 openId 或者 unionId 的。这个判断写在一个基础类里面吧,有则继续,没就再拉取一次。如果你一定要授权过期后刷新,可以看文档: https://mp.weixin.qq.com/wiki/4/9ac2e7b1f1d22e9e57260f6553822520.html#.E9.99.84.EF.BC.9A.E6.A3.80.E9.AA.8C.E6.8E.88.E6.9D.83.E5.87.AD.E8.AF.81.EF.BC.88access_token.EF.BC.89.E6.98.AF.E5.90.A6.E6.9C.89.E6.95.88
    passion336699
        12
    passion336699  
       2016-07-22 17:53:53 +08:00   1
    @shellcodecow 通常做微信开发都会专门弄一张粉丝表,如( wechat_follow ),会把粉丝的 openid ,昵称,头像,性别等信息存起来。你可以先基于 snsapi_base ,让用户做一次静默登录,拿到他的 openid ,然后去 wechat_follow 里面根据 openid 查是否存在这条数据,如果有,那你就从 wechat_follow 里面把这个粉丝的信息读出来;如果没有,就进行一次 snsapi_userinfo ,然后引导用户到微信的授权登录页面,授权登录你可以拿到粉丝的基本信息,把他们存到 wechat_follow 里面。
    下次粉丝再进入你的 web 页面的时候,你的表里面已经有数据了,跑一次静默登录,拿到 openid ,其他基本信息从表里取,就不用再做授权登录了。
    passion336699
        13
    passion336699 nbsp;
       2016-07-22 18:00:56 +08:00
    @shellcodecow 要是按微信接口文档的介绍,授权之后会返回给你一个 code ,通过 code 能换取到 openid,access_token(有效期是 7200S ,用来换取用户的基本信息,如昵称,头像等),和一个 refresh_token(有效期是 30 天, 30 天之后要重新授权)。所以你可以把 access_token,refresh_token 存起来。 access_token 过期,就用 refresh_token 刷新 access_token,然后再用 access_token 换取用户的信息。 refresh_token 过期,那就没办法了,就得重新来一次 OAuth2.0 授权了。这样做可以保证你每次拿到的用户昵称和头像都是用户当前的,比从表里读出来的要好,可能用户换了昵称,头像等信息,但是表里面还是存的他上一次授权时候的信息,没更新。
    passion336699
        14
    passion336699  
       2016-07-22 18:03:18 +08:00
    但是这样弄太麻烦了。干脆直接全部做授权登录,如果 refresh_token 没过期,微信会提示“你近期已授权过 XXX 公众号”,然后重定向到你给的 callback 地址。可能用户体验不是很好 ,哈哈
    passion336699
        15
    passion336699  
       2016-07-22 18:10:29 +08:00
    @kopa 楼主,你这个扫码之后的页面,点了左下角的关注,会跳到一个”识别二维码关注公众号“的页面,其实现在有黑科技,可以跳转到你的公众号主页,如果粉丝没关注你,上面会显示“关注公众号”,关注过了,就是“进入公众号”,只需要把跳转连接设置成“ https://mp.weixin.qq.com/mp/profile_extaction=home&__biz=MzI2NTA0NjE3NQ==&scene=110#wechat_redirect ”,这样就可以了,“ MzI2NTA0NjE3NQ ” 这个值是每个公众号唯一的,我的这个是 TOM 邮箱的。可以通过分享公众号的历史消息页面,拿到这个值,然后替换掉就可以了。你可以在微信里面访问这个试试,不会发图。。其实发张图就知道效果了 @_@
    passion336699
        17
    passion336699  
       2016-07-22 18:14:40 +08:00
    16 层的连接是对的, 15 层的复制 prifile_ext 少了个?
    kopa
        18
    kopa  
    OP
       2016-07-22 19:37:36 +08:00
    @passion336699 感谢,刚测试 ok
    kopa
        19
    kopa  
    OP
       2016-07-22 19:39:26 +08:00
    @alex321 您说的有道理,我之所以用 userinfo ,是因为 snsapi_base 这种静默模式适合已经关注公众号的粉丝使用,而 userinfo 更加适合未关注的用户授权后进入。 至于进入页面前就授权这点确实是有点产品逻辑上的问题,这个必须好好检讨和更新。感谢你的建议^_^
    JiaFeiX
        20
    JiaFeiX  
       2016-08-19 00:34:11 +08:00
    有意思,我们在做一个 美食的微信群机器人,可以跟楼主聊聊一起鼓捣点有意思的
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5869 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 08:34 PVG 16:34 LAX 01:34 JFK 04:34
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86