H5白屏问题

前言

前阵子弄了灰度环境,H5这边需要给灰度环境的接口加上Cookie,配置的期间遇到一些Cookie问题以及白屏在此记录下

1、H5请求接口带不上Cookie

解决方法:前端使用了 webpack 对项目进行打包,其中 crossOriginLoading 这一项配置的是 anonymous,由于配置错了,导致Cookie带不上

`crossOriginLoading`此选项可以启用跨域加载(cross-origin loading) chunk。
  `false`- 禁用跨域加载
  `anonymous` - 启用跨域加载。当使用 anonymous时,发送不带凭据(credential)的请求。在加载此脚本资源时不会带上用户的 Cookies
  `use-credentials`- 启用跨域加载。发送带凭据(credential)的请求。在加载此脚本资源时会带上用户的 Cookies

2、H5白屏,js 代码报错导致的

解决方法:这种报错最明显也是最简单的一种,直接复制链接在网页打开,F12进入开发者模式,观察 console 的报错并解决对应的问题即可

3、H5白屏,CDN问题

解决方法:由于部分CDN加速区域不同,导致各个区域请求 js、css 等资源响应的速度不同,部分可能请求超时,(比如当时有个客户是国外的,打开我们的 H5 链接一直白屏,而我们这边却正常)这种情况只能联系CDN提供方看能否解决,此外也可以用 17测 进行资源请求的测试

4、H5白屏,微信扫码进入页面白屏

解决方法:由于微信有缓存大小的限制,前端若在缓存中存放了太多的数据的话,可能会导致缓存失效,进而白屏,这一点是在清除微信缓存之后无意间找到的解决方法

5、H5白屏,部分苹果手机用户白屏

解决方法:当时由于前端项目比较多,打包的时候得配置好对应的请求域名,相对繁琐且容易出错,这里就使用了 nginx 重写的规则(前端无需写上对应的资源域名),将对应的环境域名拼接到对应的资源前,此时通过浏览器观察可以看到这些资源先通过301跳转,再请求对应域名的资源。后期发现这种做法出现了部分苹果手机用户进入某些页面的时候白屏,这时候猜想可能是不同手机浏览器机制的问题,Safari浏览器的301机制可能跟其他浏览器的不同,又将前端的请求域名通过301跳转的机制换掉之后就解决了

参考:

https://www.cnblogs.com/joyco773/p/9049623.html

https://www.jianshu.com/p/561a8720e762

原文地址:https://www.cnblogs.com/lyc94620/p/11483892.html

时间: 2024-12-13 04:34:25

H5白屏问题的相关文章

提升html5的性能体验系列之一避免切页白屏

窗体切换白屏的现实问题 HTML5的性能比原生差很多,比如切页时白屏.列表滚动不流畅.下拉刷新和上拉翻页卡顿.在低端Android手机上,很多原生App常用的功能和体验效果都很难使用HTML5技术模拟.我们首先来看第一个问题,如何避免切页白屏. 浏览器的页面在切换时,由于其页面加载机制,在跳转到下一个页面时,先要请求联网.载入页面代码.构建dom.渲染,最后才显示出来.在最终结果渲染完毕前,会出现几十毫秒甚至数秒的白屏.原生App是没有这个问题的.虽然使用SPA单页应用模型,即ajax+div切

Ionic2使用百度地图API(JS)出现白屏解决方案

最近自学ionic2,写了一个内嵌百度地图JS的demo,实际跑起来之后出现了大家常见的白屏问题.. 最初的实现是这样的: 首先主页内嵌了一个百度地图插件 <div id="Bmap" style="width: 100%;height: 100%"> 之后menu中一个引导的子页面也内嵌了一个百度地图 <div id="Bmap" style="width: 100%;height: 100%"> 然

Xamarin.Android splash页面瞬间响应_避免APP启动闪白屏

Application和Activity中的onCreate都进行了优化,基本没有耗时操作,但是启动应用之后还是会闪现一下白色背景,然后才进入Splash页面,对比了一下QQ.微信.微博等客户端,点击之后都是瞬间响应Splash启动页,差别在哪里呢. 其实就算你onCreate啥都不做,仍然会闪一下白屏,因为初始化解析界面时需要一定时间,解决方法是自定义Theme. 自定义如下 <style name="AppSplash" parent="android:Theme&

IE11/Flash页游白屏怎么办!立刻开启IE大地址模式!缓解浏览器白屏问题

您是否经常发现IE白屏了,具体表现为点开新网页时无法显示,只能切换标签,用任务管理器一看,内存1.2G之多. 这是因为IE11可能有内存泄露问题,内存不断增长以至于无法申请新的内存,于是IE就完蛋了! 然而为什么是1.2G呢?我们的内存经常是8G的,其实这是因为32位的IE11用的编译器可能比较旧,忘记了打开大内存模式,只能利用大概1.2G的内存 vc++的编译选项里可以为32位程序使用大地址模式,这个大地址模式可以令程序使用3.5G的内存 然而IE并没有开源,我们无法重新编译,难道我们就束手就

MPlayerX For Mac白屏问题

在Mac App store下载了MPlayerX后,如果系统版本是10.10的,用MPlayerX看视屏当选择全屏后会出现白屏现象只有声音退出全屏后仍旧是白屏. 这是因为MPlayerX已经在Mac App store里停止更新了,Mac App store下载的MPlayerX版本过旧和新系统不兼容,只要到网上下载最新的系统就好了 MPlayerX For Mac 1.0.22 修改默认播放器为MPlayerX 右击视频文件->选择显示简介->打开方式 选择MPlayerX->点击全

Android -- 距离感应器控制屏幕灭屏白屏

权限                                                                                             <uses-permission android:name="android.permission.DEVICE_POWER"/> <uses-permission android:name="android.permission.WAKE_LOCK"/>

白屏调试分析

前些天在展讯8825上调试一个ili9807的屏,屏幕一直显示为白屏,这就非常麻烦了,因为白屏意味着基本的显示也没有, 调试屏的时候,即使是显示花屏或者任何的乱彩色线条,甚至是简单的几条线,也算是成功了一小部分,能显示数据, 意味着基本的数据链路是联通的. 开始是从屏的连接器上找问题,从硬件上测量FPC是正常连接的,简单的就是测量屏与主板的各个引脚是连接通的, 各引脚上的电压是正常的,各引脚是否短路,经过长时间的测量和ic原厂的工程师帮助下,硬件在FPC上飞线, 屏的FPC终于是正常联通了!这立

解决android 启动白屏问题

Android 启动APP时黑屏白屏的三个解决方案 http://www.cnblogs.com/liqw/p/4263418.html android:windowSoftInputMode属性使用 http://www.blogjava.net/zhip/archive/2011/02/14/344258.html

android中的webview白屏问题

最近在使用WebView的时候,发现了一个小问题,很多初学者应该会注意不到! WebView的layerType属性有三个值. 1.none,默认值, 2.software,软件加速, 3.hardware,硬件加速. 当设置为第三个值得时候,在某些手机上WebView加载完会出现白屏现象,可能是因为某些手机不支持硬件加速导致的,把WebView 的layerType值设为software,把WebView父容器的layerType值设为hardware就可以了. 还有一些其他的控件也通用 具体