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

测试了小程序的内嵌网页,我总结了几点

  •  5
     
  •   qiayue · 2017-11-03 12:57:25 +08:00 · 27626 次点击
    这是一个创建于 2578 天前的主题,其中的信息可能已经有所发展或是发生改变。
    本来想发一篇公众号文章的,想想排版想想配图,太麻烦太花时间,就直接在 V2EX 简单说下。

    1、内嵌网页的域名需要在小程序管理后台设置为业务域名,也就是需要先加入白名单
    一个小程序最多可以添加 20 个业务域名,且一年只可修改 50 次业务域名。

    2、内嵌的网页用起来跟微信内打开体验差不多,下拉也会显示“网页由 XX 域名提供”

    3、内嵌的网页可以播放视频,但是视频必须是在白名单域名内的
    我测试把视频放在七牛,就无法播放,一直在加载中。

    3、内嵌的网页可以嵌入 iframe,而且 iframe 打开的页面可以不在白名单内
    iframe 我试了百度首页,淘宝宝贝详情页,我自己的另一个不在白名单域名下页面,都能够打开。
    这应该是 bug 而不是 feature。

    4、内嵌网页想与小程序通信,只能通过 JSSDK,但是目前只开放了部分接口,具体看开发文档
    也就是如果你之前基于微信服务号授权做的页面,就没办法直接在小程序内嵌网页使用了,因为没办法授权。

    5、但是,如果已经微信打开并且授权过的页面,在小程序打开也是登录状态
    也就是说,微信内置浏览器和小程序内置浏览器其实是同一个实例,至少都共享 cookie 了
    我刚才特意测试过,一开始用小程序内嵌网页打开一个需要服务号授权的页面,结果一片空白,然后退出小程序,用微信打开页面,授权之后,再打开小程序,就是已授权状态了


    最后,一个赣南脐橙红包送给大家,微信扫码领取,直接进入橙包余额,11.15 之后可以提现:
    22 条回复    2017-11-07 16:54:00 +08:00
    s609926202
        1
    s609926202  
       2017-11-03 13:10:04 +08:00 via iPhone
    所以,最后一张图是关键?
    qiayue
        2
    qiayue  
    OP
       2017-11-03 13:13:30 +08:00
    @s609926202 顺带
    lsylsy2
        3
    lsylsy2  
       2017-11-03 13:16:47 +08:00
    LZ 是当年做零食礼包的?对天蓝村这个名字有印象
    前面的信息都是真实有用的情况下,最后打个广告感觉没啥问题
    qiayue
        4
    qiayue  
    OP
       2017-11-03 13:18:51 +08:00
    @lsylsy2 是的,就是之前零食订阅的天蓝村
    zj0713001
        5
    zj0713001  
       2017-11-03 13:44:27 +08:00
    请问 打开网页后 会有右上角三个点的按钮 并且分享页面么
    ctsed
        6
    ctsed  
       2017-11-03 13:46:39 +08:00 via Android
    @qiayue 当年买过一箱,现在这种零食包蛮火的,送人合适
    taojing10
        7
    taojing10  
       2017-11-03 13:46:49 +08:00 via Android
    所以说,webapp 复活了?
    qiayue
        8
    qiayue  
    OP
       2017-11-03 14:00:57 +08:00   ❤️ 1
    @zj0713001 需要小程序页面配置了 onShareAppMessage 才会显示转发按钮,回调函数内可以获取 webview 当前的 URL
    ieliwb
        9
    ieliwb  
       2017-11-03 14:02:39 +08:00
    天蓝村怎么不搞了,挺好的啊
    cenxun
        10
    cenxun  
       2017-11-03 14:03:46 +08:00
    可以的,谢谢分享~
    SakuraKuma
        11
    SakuraKuma  
       2017-11-03 14:06:32 +08:00
    谢谢分享,省下了测试的功夫。
    phy25
        12
    phy25  
       2017-11-03 14:06:50 +08:00 via Android
    这一说才发现微信的 TBS 对 iframe 里的东西限制不够……即便非小程序 context 下的 iframe 内容几乎没有限制……
    wafm
        13
    wafm  
       2017-11-03 14:56:15 +08:00
    也就是说 目前还是没有很好的办法可以令公众号 openid 和小程序 openid 互通
    qiayue
        14
    qiayue  
    OP
       2017-11-03 15:00:51 +08:00
    @wafm 目前 webview 中 URL 是写死在 src 中的,所以也就没办法先小程序获取用户 openid 之后,再通过拼接到 url 中来传给网页
    wafm
        15
    wafm  
       2017-11-03 15:03:15 +08:00
    @qiayue 是的,我现在是用比较复杂的办法,先用一个 page 获取公众号 openid 后跳转到公众号文章,在文章中再指引跳转到小程序,这样就可以先取到公众号 openid 了,再利用 unionid 就可以互通了。

    不理解为什么迟迟没有开放互通呢。。
    rswl
        16
    rswl  
       2017-11-03 16:14:43 +08:00
    最近看到好多小程序的推广
    xi_lin
        17
    xi_lin  
       2017-11-03 18:21:01 +08:00
    lz 试的是 iOS 还是 android ?怀疑有可能实现不一样
    qiayue
        18
    qiayue  
    OP
       2017-11-03 19:24:27 +08:00
    @xi_lin Android
    yeshang
        19
    yeshang  
       2017-11-03 22:09:16 +08:00 via Android
    好像上次收到的橙包,不见了。是 bug 还是到期未兑换?
    qiayue
        20
    qiayue  
    OP
       2017-11-03 22:56:17 +08:00
    @yeshang 没有有效期,在我收到的橙包里边看不到吗?
    请加我微信我帮你查下数据,微信号是 V2EX id
    tojike
        21
    tojike  
       2017-11-07 15:30:52 +08:00
    内嵌网页若有微信支付功能 能直接支付吗
    qiayue
        22
    qiayue  
    OP
       2017-11-07 16:54:00 +08:00
    @tojike 不能
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3002 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 14:04 · PVG 22:04 · LAX 06:04 · JFK 09:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.