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

做微信内置网页,有个疑问求高手解答

  •  
  •   mewpoi · 2017-04-13 11:14:43 +08:00 · 3153 次点击
    这是一个创建于 2785 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在微信内浏览可以用 navigator.userAgent.toLowerCase()来判断是否是微信内浏览器,但进阶的判断是否在微信公众号服务号如何判断,我看了微信接口也没发现有相关的判断,求高手解惑

    21 条回复    2017-04-14 14:09:11 +08:00
    BOYPT
        1
    BOYPT  
       2017-04-13 11:18:25 +08:00
    走一次网页授权,能过的必定在微信内了。
    BOYPT
        2
    BOYPT  
       2017-04-13 11:19:26 +08:00
    如果只是判断在微信,引入 js sdk 也可以的呀。
    mewpoi
        3
    mewpoi  
    OP
       2017-04-13 11:25:20 +08:00
    @BOYPT 判断微信内肯定可以 但判断是否在公众号服务号就不行了 我想知道他是在公众号服务号中打开网页 也就是说微信内包含了公众号服务号 也包括了微信分享出去连接打开网页 要区分开
    BOYPT
        4
    BOYPT  
       2017-04-13 11:48:30 +08:00
    你是指通过服务号菜单点开的吧,微信没有这样的验证;只能说你自己给菜单加个验证参数,后台处理掉,如果分享出去的就没有这个参数这样咯。
    chairuosen
        5
    chairuosen  
       2017-04-13 11:49:33 +08:00
    两种思路, 1 ,我记得可以拿到用户是否关注了你的公众号。 2 ,公众号链接带尾巴,页面 js replaceState 把尾巴去掉,这样分享的不带尾巴
    iot
        6
    iot  
       2017-04-13 12:17:41 +08:00
    可以的, 用户点击了之后就可以获取用户的基本信息了,包括是否关注了公众号。
    mewpoi
        7
    mewpoi  
    OP
       2017-04-13 12:21:32 +08:00 via iPhone
    @chairuosen 想过这么做,带尾巴点进去第一跳可以记录是微信公众号,第二跳就不行了,尾巴会消失,但如果根据尾巴记录 cookie 也不行, cookie 会一直跟着用户本地,这样也无法再判断是非公众号打开网页了,带不带尾巴,记不记 cookie 都不行,除非微信内部接口可以直接判断
    wkan
        8
    wkan  
       2017-04-13 13:07:17 +08:00 via iPhone
    为什么会有这种需求呢,直接说说这个需求的目的吧
    pubby
        9
    pubby  
       2017-04-13 13:11:42 +08:00
    网页显示在微信内置浏览器中,没有"是否"在公众号内的概念。

    要不你带两种尾巴,公众号内的一种,其他的另一种,碰到尾巴就更新 cookie,然后始终从 cookie 判断
    mrtctl
        10
    mrtctl  
       2017-04-13 13:21:58 +08:00 via iPhone
    微信分享的链接后面会自动带一个?from={xxx}&isappinstalled={xxx}

    比如 ?from=singlemessage&isappinstalled=0

    公众号直接点击应该不带?
    BOYPT
        11
    BOYPT  
       2017-04-13 13:22:38 +08:00
    @mewpoi #7 那你可以一直带尾巴,然后调用 jssdk 让分享地址跟当前不一样。
    mewpoi
        12
    mewpoi  
    OP
       2017-04-13 13:24:18 +08:00 via iPhone
    @wkan 计算微信公众号和微信内分享链接的注册量,打开的链接并不是注册页,需要跳转后才到注册页,就是这个需求
    mewpoi
        13
    mewpoi  
    OP
       2017-04-13 13:26:17 +08:00 via iPhone
    @pubby 这个是最后没办法的办法,尽可能不想带那么多尾巴,因为微信分享已经带了尾巴,继续增加逻辑会乱,当然并不是不可行
    wkan
        14
    wkan  
       2017-04-13 14:21:50 +08:00 via iPhone
    这个不是可以统计微信按钮的点击事件吗
    chairuosen
        15
    chairuosen  
       2017-04-13 14:26:21 +08:00
    @mewpoi 第二跳也可以啊,改程序里 url 透传
    mewpoi
        16
    mewpoi  
    OP
       2017-04-13 19:40:08 +08:00 via iPhone
    @chairuosen 改 url 会有问题,当跳转一个地址以后,再返回之前页面需要 2 次,一次是之前页面的 url 第二次是改后的 url ,会影响体验…
    mewpoi
        17
    mewpoi  
    OP
       2017-04-13 19:42:13 +08:00 via iPhone
    @wkan 点击以后跳转到内嵌 wap 网站,再记录里面的注册就不行了,因为用户可以选择离开打开分享页,如果记 cookie 也不准确,因为会一直保留,除非两边都记
    ltq918
        18
    ltq918  
       2017-04-13 23:51:59 +08:00
    点击按钮,触发关键字图文回复,点击图文跳转到链接,然后统计关键字触发次数呢
    chairuosen
        19
    chairuosen  
       2017-04-14 09:05:31 +08:00
    @mewpoi 所以我说用 replaceState 改
    shew2356
        20
    shew2356  
       2017-04-14 10:29:57 +08:00
    加上小尾巴。
    BearD01001
        21
    BearD01001  
       2017-04-14 14:09:11 +08:00
    URI 中加参数区分
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   994 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 21:20 · PVG 05:20 · LAX 13:20 · JFK 16:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.