收藏
回答

建议 web-view 打开页面的时候可以自定义部分header信息

框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
小程序 需求 web-view 微信iOS客户端 6.6.2 1.9.90

建议 web-view 打开页面的时候可以允许开发者自定义部分header信息

主要是两个场景:

1、可以把小程序里的已登录用户信息等不适合放在网址里的信息放在自定义header里传递到页面

2、目前小程序 web-view的useragent和微信浏览器的useragent是一样的,网页端没办法区分,通过自定义header可以区分


回答关注问题邀请回答
收藏

16 个回答

  • 祺爸💎
    祺爸💎
    2018-05-02

    @黄思程 设置cookie方法不行,我实际测试了,即使cookie有效期是当前session的情况下,在小程序webview中设置的cookie,在同一进程微信浏览器中打开,这个cookie仍然存在


    根源还是在小程序webview和微信本身浏览器没有做区分

    2018-05-02
    有用
    回复
  • awen
    awen
    2018-04-24

    这个功能非常必要,通过url传参不太方便,也太好被模拟。

    目前web-view和小程序自身与服务器端的会话同步也需要我们对web-view最一些自定义。

    window.__wxjs_environment  是在前端操作,对于保密性而言根本没什么意义。

    而通过postMessage来互相交互确认信息,  现在还非常鸡肋基本没得耍

    2018-04-24
    有用
    回复
  • 祺爸💎
    祺爸💎
    2018-04-20

    @cunjinli 你好,你说的两种方法我都知道,都不符合我这边的开发需求

    我这边逐条说一下

    可以通过在web-view组件的src上多带一个特殊参数来区分程序环境

    URL 里加特殊的字符串这个方法是我现在在用的方法,但是很不方便,如果遇到页面里有其他页面的链接,就很麻烦了


    页面中可以通过js变量window.__wxjs_environment来判断是否是小程序打开

    很多时候在页面js生效之前就需要在服务器端先判断环境来决定加载的数据


    web-view的user-agent中加入特殊字符以区分微信自带浏览器 这个需求已经提了很多次了,小程序和微信本身浏览器从业务上来说很显然是属于两套不同逻辑,理应有所区分,希望可以尽快实现这个需求,谢谢



    2018-04-20
    有用
    回复
  • 祺爸💎
    祺爸💎
    2018-04-18

    这里涉及到另一个需求,小程序的web-view的useragent中可以带有特殊字符

    2018-04-18
    有用
    回复
  • 祺爸💎
    祺爸💎
    2018-04-18

    说的再详细点,如果小程序的web-view和微信本身的浏览器能区分的情况下,可以是第一次打开页面需要。否则就是接下来的跳转请求都带上这个自定义header

    2018-04-18
    有用
    回复
  • 祺爸💎
    祺爸💎
    2018-04-18

    都可以

    2018-04-18
    有用
    回复

正在加载...

登录 后发表内容