2009-05-15 6 views

답변

8

Re의 InputStream 속성을 사용할 수 있습니다. 퀘스트 개체. 그러면 http 요청의 원시 데이터가 제공됩니다. 일반적으로 이것을 사용자 정의 http 핸들러로 할 수도 있지만 언제든지 할 수 있다고 생각합니다.

if (Request.RequestType == "POST") 
{ 
    using (StreamReader reader = new StreamReader(Request.InputStream)) 
    { 
     // read the stream here using reader.ReadLine() and do your stuff. 
    } 
} 
0

가장 좋은 방법은 Fiddler 또는 LiveHttpHeaders (Firefox 만 해당)과 같은 일부 브라우저 플러그인을 사용하는 것입니다. 그런 다음 원시 POST 데이터를 인터셉트 할 수 있습니다.

당신은 요청 본문에서 읽을 BinaryRead을 사용할 수 있습니다
6

: 당신이 입력 Stream 객체에 대한 참조를 얻을 수

Request.BinaryRead 

또는 그런 다음

Request.InputStream 

을 당신은 사용할 수 CopyStream :

using (FileStream fs = new FileStream(...)) 
    CopyStream(fs, Request.InputStream); 
+3

이제 .NET 4.0에는'Stream.CopyTo()'메소드가 있습니다. – spoulson

2

Fiddler과 같은 프록시 응용 프로그램을 사용할 수 있습니다. 그러면 전송 된 모든 데이터를보고 필요에 따라 파일에 저장할 수 있습니다.

+0

완벽하면 보내고받은 모든 정보를 보여줍니다! – Dediqated

5

POST 데이터 만 있으면 Request.Form.ToString()을 사용하여 URL 인코딩 방식으로 모든 데이터를 가져올 수 있습니다.

if (Request.RequestType == "POST") { 
    string myData = Request.Form.ToString(); 
    writeData(myData); //use the string to dump it into a file, 
} 
관련 문제