c# – 在不使用fiddler的情况下,在GetResponse之前将HttpWebRequest视为字符串

在调用GetResponse方法之前,如何将HttpWebRequest对象视为字符串?我希望看到像fiddler这样的请求的原始格式:

Content-Type: multipart/form-data; boundary=---------------------------2600251021003 
Content-Length: 338 
-----------------------------2600251021003 Content-Disposition: form-data; name="UPLOAD_FILEName"; filename="Searchlight062210 w price.csv" Content-Type: application/vnd.ms-excel 
,,,,, 
-----------------------------2600251021003 
Content-Disposition: form-data; name="submit" 
submit 
-----------------------------2600251021003-- 

我尝试了下面的代码,但由于流不可读而无法使用.

 string GetRequestString(HttpWebRequest req)
        {
            Stream stream2 = req.GetRequestStream(); 
            StreamReader reader2 = new StreamReader(stream2);
            return reader2.ReadToEnd();  

        }

解决方法:

如果是用于记录目的,您可以通过将其放入app / web.config来激活跟踪:

  <system.diagnostics>
    <sources>
      <source name="System.Net.Sockets" tracemode="protocolonly">
        <listeners>
          <add name="System.Net.Sockets" type="System.Diagnostics.TextWriterTraceListener" initializeData="network.log" />
        </listeners>
      </source>
    </sources>

    <switches>
      <add name="System.Net.Sockets" value="Verbose"/>
    </switches>

    <trace autoflush="true" />
  </system.diagnostics>

运行代码并查看生成的日志文件.

上一篇:CentOS学习之NTP服务配置详解


下一篇:http与rfc