Curl 如何使用Fiddler做gzip帖子?

Curl 如何使用Fiddler做gzip帖子?,curl,gzip,fiddler,Curl,Gzip,Fiddler,小提琴手,当然,石头 所以我需要构建我的请求(一些头,一个大的xml负载),并执行一个gzip压缩的http POST(头表示gzip压缩,我粘贴的xml负载得到gzip压缩…就像规范所说的那样) 怎么做 当我对gzip使用“Rules”选项时,请求看起来(就我所见)没有被修改。如果没有gzip,则显示为相同 目前正在使用fiddler 2.3.9.2 卷曲参考: fiddler中所需的目标可以通过几个步骤在curl中完成: 1) gzip payload.xml(使用7-Zip或其他可以创建g

小提琴手,当然,石头

所以我需要构建我的请求(一些头,一个大的xml负载),并执行一个gzip压缩的http POST(头表示gzip压缩,我粘贴的xml负载得到gzip压缩…就像规范所说的那样)

怎么做

当我对gzip使用“Rules”选项时,请求看起来(就我所见)没有被修改。如果没有gzip,则显示为相同

目前正在使用fiddler 2.3.9.2

卷曲参考: fiddler中所需的目标可以通过几个步骤在curl中完成:

1) gzip payload.xml(使用7-Zip或其他可以创建gzip文件的工具)。调用文件:payload.xml.gz

2) 使用此语法

curl --header "Content-Type: application/xml" --header "Content-Encoding: gzip" --data-binary "@payload.xml.gz" https://<yourendpoint> --insecure --trace-ascii -
curl--header“Content-Type:application/xml”--header“Content-Encoding:gzip”--data-binary“@payload.xml.gz”https://--不安全--跟踪ascii-

蒂亚

首先,请升级到Fiddler的当前版本

其次,了解Fiddler的大部分可见压缩特性都与响应的压缩有关,而不是与请求的压缩有关,这一点很重要。这是因为许多/大多数服务器不支持请求压缩,因为浏览器无法事先知道是否支持请求压缩,因此浏览器不压缩请求。类似地,支持压缩请求会使服务器面临压缩炸弹攻击

话虽如此,有些服务器确实支持压缩请求,Fiddler可以生成这些请求。第一个问题是“您是如何生成请求的?”

如果您正在使用Composer,请执行以下操作:单击规则>自定义规则。滚动至OnBeforeRequest。添加以下行:

static function OnBeforeRequest(oSession: Session) {        
       if (oSession.oRequest.headers.ExistsAndContains("Content-Encoding", "doGZIP"))
        {
          oSession.oRequest.headers.Remove("Content-Encoding");
          oSession.utilGZIPRequest();
        }

现在,任何包含Content Encoding:doGZIP头的请求都将由Fiddler在传输到服务器之前自动压缩。

首先,请升级到Fiddler的当前版本

其次,了解Fiddler的大部分可见压缩特性都与响应的压缩有关,而不是与请求的压缩有关,这一点很重要。这是因为许多/大多数服务器不支持请求压缩,因为浏览器无法事先知道是否支持请求压缩,因此浏览器不压缩请求。类似地,支持压缩请求会使服务器面临压缩炸弹攻击

话虽如此,有些服务器确实支持压缩请求,Fiddler可以生成这些请求。第一个问题是“您是如何生成请求的?”

如果您正在使用Composer,请执行以下操作:单击规则>自定义规则。滚动至OnBeforeRequest。添加以下行:

static function OnBeforeRequest(oSession: Session) {        
       if (oSession.oRequest.headers.ExistsAndContains("Content-Encoding", "doGZIP"))
        {
          oSession.oRequest.headers.Remove("Content-Encoding");
          oSession.utilGZIPRequest();
        }

现在,任何包含内容编码:doGZIP头的请求在传输到服务器之前都会被Fiddler自动压缩。

Eric,谢谢!!我用curl解决了眼前的需要。然而,我更喜欢使用小提琴,因为这是我们在家里使用的标准工具。关于你的步骤的问题:(a)这些步骤会添加“contentencoding:gzip”标题吗?(b) 内容大小标题是否自动设置?(c) 我发送的其他标题会在输入时发送吗?谢谢埃里克,谢谢!!我用curl解决了眼前的需要。然而,我更喜欢使用小提琴,因为这是我们在家里使用的标准工具。关于你的步骤的问题:(a)这些步骤会添加“contentencoding:gzip”标题吗?(b) 内容大小标题是否自动设置?(c) 我发送的其他标题会在输入时发送吗?谢谢