小编Eri*_*Law的帖子

与GZIP相比,缩小了压缩浏览器的兼容性和优势


更新2012年2月10日:

zOompf已经完成了这个题目了一些非常深入的研究在这里.它胜过下面的任何发现.


更新2010年9月11日:

一个测试平台已经为此创建这里




一些背景信息的GZIP和DEFLATE(zlib)的HTTP 1.1定义:

"'Gzip'是gzip格式,'deflate'是zlib格式.它们应该调用第二个'zlib'来避免与原始deflate压缩数据格式混淆.虽然HTTP 1.1 RFC 2616正确指向RFC 1950中针对'deflate'传输编码的zlib规范,有报告称服务器和浏览器根据RFC 1951中的deflate规范错误地生成或期望原始deflate数据,最明显的是Microsoft产品.所以尽管'deflate'使用zlib格式的传输编码将是更有效的方法(实际上正是 zlib格式的设计),使用'gzip'传输编码可能更可靠,因为HTTP上的名称选择不幸1.1作者." (来源:http://www.gzip.org/zlib/zlib_faq.html)

所以,我的问题是:如果我使用NO zlib包装器发送RAW deflate数据(或gzip,就此而言)是否有任何现代浏览器(例如,IE6和更高版本,FF,Chrome,Safari等)无法理解原始的deflate压缩数据(假设HTTP请求标头"Accept-Encoding"包含"deflate")?

放气数据总是比GZIP小几个字节.

如果所有这些浏览器都能成功解码数据,那么发送RAW deflate而不是zlib会有什么缺点?



更新2010年9月11日:

一个测试平台已经为此创建这里

compression optimization gzip zlib deflate

89
推荐指数
2
解决办法
4万
查看次数

Fiddler没有从浏览器捕获流量

我一直在使用Fiddler很长一段时间,但突然间它不再捕获互联网流量.我在Chrome 29和Fiddler v4.4.5.1上.我检查了所有过滤器和规则,但没有任何内容.我删除了我的规则文件,打开和关闭捕获流量,以及其他一些没有运气的东西.我甚至卸载并重新安装了Fiddler,看看这是否会有所帮助,但无济于事.

我错过了什么?

[跟进]:

  • 故障排除过滤器无效.
  • 我在"Fiddler Running ..."之后的日志选项卡中看不到任何活动
  • 我尝试过多个浏览器,没有人在小提琴手中显示互联网流量
  • http://localhost.fiddler:8888/ 不起作用
  • http://127.0.0.1:8888 工作并显示小提琴回声服务.

fiddler

57
推荐指数
7
解决办法
11万
查看次数

如何模拟Windows关机以进行调试?

当Windows关闭时,我的应用程序出现问题 - 我的应用程序没有很好地退出,导致显示"结束任务"窗口.如何使用调试器查看发生了什么?

有没有办法将Windows关闭消息发送到我的应用程序,因此它认为Windows正在关闭,所以我可以看到它的确切行为?

.net c# shutdown winforms

48
推荐指数
2
解决办法
1万
查看次数

下载A标签上的属性不适用于IE

从下面的代码中我创建了一个下载文件的动态锚标记.此代码适用于Chrome,但不适用于IE.我怎样才能使这个工作

<div id="divContainer">
    <h3>Sample title</h3>
</div>
<button onclick="clicker()">Click me</button>

<script type="text/javascript">

    function clicker() {
        var anchorTag = document.createElement('a');
        anchorTag.href = "http://cdn1.dailymirror.lk/media/images/finance.jpg";
        anchorTag.download = "download";
        anchorTag.click();


        var element = document.getElementById('divContainer');
        element.appendChild(anchorTag);
    }

</script>
Run Code Online (Sandbox Code Playgroud)

html anchor internet-explorer

44
推荐指数
4
解决办法
6万
查看次数

fiddler2无法生成证书

我正在使用Fiddler2(或尝试)来获取点击https网络服务的Windows桌面小工具的SSL流量.它曾经工作,然后它几天前停止,总是出现这个错误:

--------------------------- 
Unable to Generate Certificate 
--------------------------- 
Creation of the interception certificate failed. 
makecert.exe returned -1. 
Results from C:\Program Files\Fiddler2\MakeCert.exe -ss my -n 
"CN=DO_NOT_TRUST_FiddlerRoot, O=DO_NOT_TRUST, OU=Created by 
http://www.fiddler2.com" -eku 1.3.6.1.5.5.7.3.1 -r -cy authority -a 
sha1 
Error: Can't create the key of the subject ('JoeSoft') 
Failed 
------------------------------------------- 
Run Code Online (Sandbox Code Playgroud)

(我为了小提琴手从谷歌小组中删除了错误,虽然我刚发布了自己的错误,但很快就会看到它).

还有其他人有这个问题并解决了吗?小提琴手刚破了吗?

https fiddler makecert

36
推荐指数
6
解决办法
3万
查看次数

(弱)ETags和Last-Modified

据我了解的规格,RFC 2616(HTTP/1.1)中引入的ETag是Last-Modified-Header的后继产品,它可以让软件架构师更好地控制它.缓存重新验证过程.

如果存在Cache-Validation-Headers(If-None-Match和If-Modified-Since),则根据RFC 2616,客户端(即浏览器)在检查资源时是否应使用ETag.根据RFC 2616的第14.26节,如果If-None-Match-Header中出现的ETag已更改,则服务器不得以304 Not Modified响应,并且服务器必须忽略其他If-Modified-Since-Header ,如果有的话.如果呈现的ETag匹配,则他不得执行请求,除非Last-Modified-Header中的Date表示如此.(如果提供的ETag匹配,服务器应该在GET或HEAD请求的情况下响应304 Not Modified ...)

这部分为一些猜测留下了空间:

  • 一个强大的ETag应该随时改变'',资源会发生变化.所以,必须用其他东西作为304 Not Modified来回应一个没有改变的ETag和一个If-Modified-Since-Header的请求,这是一个矛盾,因为强大的ETag说,资源是没有修改.(虽然这不是致命的,因为服务器可以再次发送相同的未更改的资源.)
  • ...

...好的当我写这篇文章的时候,问题就是这个答案:

上面提到的(小)矛盾是因为弱ETag.标有弱ETag的资源可能已经改变,尽管ETag没有.因此,在弱ETag的情况下,当ETag没有改变时回答3​​04 Not Modified是错误的,但是If-Modified-Since中呈现的日期不匹配,对吧?

etag http last-modified if-modified-since

18
推荐指数
1
解决办法
9332
查看次数

使用Fiddler进行过程过滤

有没有办法过滤出Fiddler中的某些过程?它目前非常嘈杂,我不希望它只显示一个过程.

filtering process fiddler

15
推荐指数
2
解决办法
1万
查看次数

HTML5 Canvas getImageData和Same Origin Policy

我有一个运行在pixie.strd6.com的网站,图像通过Amazon S3托管,图像为CNAME for images.pixie.strd6.com.

我希望能够将这些图像绘制到HTML5画布并调用getImageData方法,但它会抛出 Error: SECURITY_ERR: DOM Exception 18

我尝试过设置window.domain = "pixie.strd6.com",但这没有效果.

此外,$.get("http://dev.pixie.strd6.com/sprites/8516/thumb.png?1293830982", function(data) {console.log(data)})还会抛出一个错误:XMLHttpRequest cannot load http://dev.pixie.strd6.com/sprites/8516/thumb.png?1293830982. Origin http://pixie.strd6.com is not allowed by Access-Control-Allow-Origin.

理想情况下,HTML5画布不会阻止getImageData来自子域的调用.我已经研究过在S3中设置Access-Control-Allow-Origin标头,但是没有成功.

非常感谢任何帮助或解决方法.

subdomain html5 canvas same-origin-policy

15
推荐指数
1
解决办法
1万
查看次数

Fiddler在启动时没有捕获

如何让fiddler在启动时不自动开始捕获流量?

谢谢

fiddler

14
推荐指数
2
解决办法
2914
查看次数

ScriptResource.axd的viewstate无效?

脚本资源和Web资源文件在我的应用程序中生成间歇性错误.我一直试图追逐问题的原因,但无济于事.我注意到传递的"d"参数是一些损坏程度,我不能为我的生活弄清楚是什么导致这个参数被破坏.我注意到在我的应用程序中的JavaScript代码是如何与为"d"参数生成的哈希代码交织在一起的.

Exception genereated on Monday, January 26, 2009, at 2:20 AM
Page location: /ScriptResource.axd?d=y9_dUwBeGqLlRpT5Dml1zhoQvfa7NKdj69EYuV771kzSsa5KOOXBfJZjk%20%20%20%20%20%20%20%20%20%20%20%20if%20(cat_gallery%20!=
Requested Url : http://garmn.factoryoutletstore.com/ScriptResource.axd?d=y9_dUwBeGqLlRpT5Dml1zhoQvfa7NKdj69EYuV771kzSsa5KOOXBfJZjk if (cat_gallery !=
Message: Exception has been thrown by the target of an invocation.
Source: mscorlib
Method: System.Object _InvokeMethodFast(System.Object, System.Object[], System.SignatureStruct ByRef, System.Reflection.MethodAttributes, System.RuntimeTypeHandle)
Stack Trace: at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) at …

javascript viewstate resources

11
推荐指数
2
解决办法
7302
查看次数