建议 web-view的user-agent中能加入特殊字符以区分微信自带浏览器
或者开发者可以自己设定部分header信息
我的需求是在页面加载前使用服务器程序来判断是否是小程序,还没到页面加载后用js来判断这一步
在URL 里加特殊的字符串这个方法是我现在在用的方法,但是很不方便,如果遇到页面里有其他页面的链接,就很麻烦了
所以还是建议能通过user-agent中加入特殊字符的方式,方便开发
有官方用户回复建议:第一次在web-view src上带多一个参数,服务器识别到这个参数后种一个cookie呢,后续请求识别这个cookie即可。cookie的有效期可以只是当前session
我这边实际测试的结果是:设置cookie方法不行,我实际测试了,即使cookie有效期是当前session的情况下,在小程序webview中设置的cookie,在同一进程微信浏览器中打开,这个cookie仍然存在
根源还是在 小程序webview和微信本身浏览器没有做区分
@黄思程 我们也有此需求。我们的公众号和小程序 webview 是共用一个 H5,如果能在 UA 上做区分,就能在 nginx 层做多入口。比如公众号需要加载地图 SDK,小程序 webview 无需加载地图 SDK(因为小程序里面地图是用小程序地图组件做的),可以提升小程序 webview 加载速度。