chromium - ERR_CONTENT_DECODING_FAILED
发布日期:2021-06-30 22:19:30 浏览次数:2 分类:技术文章

本文共 847 字,大约阅读时间需要 2 分钟。

前言

对一个内建web-ui,加了点功能,调试都正常了。

尝试将这个web-ui实现,挪到我自己的web-ui中,执行时,网页出来后是白页,显示报错信息为"ERR_CONTENT_DECODING_FAILED"

尝试解决这个错误

实验

出现这个错误时,我有2个好的web-ui实现。

  • 我改好的内建web-ui
  • 我自己搞的web-ui
    错误仅仅发生在将改好的web-ui挪到我自己的web-ui时。
    其实这种场景(有正确的case, 有错误的case, bug能重现),出现bug, 心里是有底的,一点不慌。

刚玩chromium, 排bug的方法采用对比和逐步加代码+测试验证的方法。

发现调用了html_source->UseGzip(); 就会出现"ERR_CONTENT_DECODING_FAILED"
这时看看这句代码,再看看错误信息,已经能明白,是资源的编码方式引起的。

去Z:\chromium\src\chrome\browser\browser_resources.grd,去看资源(*.html, *.css, *.js)

chromium的资源条目,每一个都可以指定type=“xx” compress=“xx”, 其中compress="gzip"就是资源采用gzip压缩.

如果指定了compress=“gzip”,c++代码中就要调用html_source->UseGzip(); 否则出现ERR_CONTENT_DECODING_FAILED或乱码

最简单方法,就是看看其他资源条目怎么写的,试试就行。

改了资源文件browser_resources.grd,需要重新生成工程,编译工程,再跑起来看效果。

# cd /d Z:\chromium\src\# gn --ide=vs args out\my_x86_d# autoninja -C out\my_x86_d chrome

转载地址:https://lostspeed.blog.csdn.net/article/details/85119755 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:调试: 删除vs2008项目历史记录
下一篇:chromium - post task for web-ui

发表评论

最新留言

很好
[***.229.124.182]2024年04月30日 14时07分54秒