hgo*_*ebl 12 html debugging firefox image
意见
从包含广告位的https提供单页应用程序网页.这些广告位由一些出价逻辑填充,广告通过JavaScript在IFRAME文档中编写.
首次加载显示广告图片,例如https://tpc.googlesyndication.com/pagead/imgad?id=CICAgKDLu47R8QEQARgBMggW4D7gy4qb5g
当用户在页面上操作时,会发生新的广告出价并重新加载广告位.在我们的例子中:呈现img具有相同src属性的元素.
所有其他浏览器(Chrome,IE,Safari)显示此图像,取自本地缓存.
不是这样:Firefox(Windows,Mac;版本52)的行为如下:
alt在白色背景的文本img说"错误加载图像"(我完全知道德语信息)304或"从缓存")附加信息:
https例
在下一页,您可以看到错误(我想这是一个FireFox错误):
http://bartelt.team.netzathleten-media.de/2017-03-30_MD-230-refresh-bug/
5秒后,广告消失(仅限FireFox).
问题
你能告诉我一些可能导致这个问题的原因吗?
有没有办法以某种方式调试onerror由外国代码(来自广告服务器)动态创建的图像?
这真的很奇怪,我非常感谢你的帮助.
非常有趣的问题。一定要让你拔头发。很难用精简的代码提供解决方案,但我可以告诉你我观察到的情况,也许会有所帮助。
\n\n观察1:
\n\n我也在其他一些浏览器中尝试过这一点。似乎 safari 9.1.1(注意:10.1 中没有问题)也失败了,但给出了更有意义的错误消息。这似乎是 CORS 以及不同浏览器缓存方式的问题。在 Chrome 中,图像会被缓存,而在 Firefox 和 Safari 中则不会。当代码轮询(从广告内)时,它尝试从http://tpc.googlesyndicate.com加载内容加载内容,这些“问题浏览器”称其违反了 CORS。为什么它首先会加载?没有源代码很难说。
\n\n我有兴趣看看如果 5 秒后加载不同的广告会发生什么。
\n\n无论如何,这是 safari 的错误:
\n\n\nBlocked a frame with origin "http://bartelt.team.netzathleten-media.de" from accessing a frame with origin "http://tpc.googlesyndication.com". Protocols, domains, and ports must match.\ndc \xe2\x80\x94 mtrcs_533746.js:50:368\n(anonymous function) \xe2\x80\x94 mtrcs_533746.js:23:281\nq \xe2\x80\x94 mtrcs_533746.js:85:503\nsd \xe2\x80\x94 mtrcs_533746.js:23:233\nwd \xe2\x80\x94 mtrcs_533746.js:24\nnb \xe2\x80\x94 mtrcs_533746.js:26:154\n(anonymous function) \xe2\x80\x94 mtrcs_533746.js:26:214\nU \xe2\x80\x94 mtrcs_533746.js:22\n(anonymous function) \xe2\x80\x94 mtrcs_533746.js:22:103\n(anonymous function) \xe2\x80\x94 mtrcs_533746.js:84:424\n
观察2:
\n\n你说的是通过ssl加载的。无论如何,Safari 9.1 中没有。请参阅上面的错误。你的 ssl 证书有各种各样的问题,我会首先解决这个问题。看起来像是自签名的?无论如何,请看这里,看起来这可能会让你陷入 CORS 地狱。
\n\n祝你好运,我希望这会有所帮助。CORS 和 SSL 确实很难处理。尤其是现代浏览器对不使用 https 和/或混合内容变得更加严格。
\n| 归档时间: |
|
| 查看次数: |
547 次 |
| 最近记录: |