2011-12-05 5 views
4

HttpRequest의 원시 전체 데이터를 저장하려고합니다. 지금이 있습니다 :HTTP 요청에서 원시 데이터를 가져 옵니까?

Request.ContentEncoding.GetString(Request.BinaryRead(int.MaxValue)); 

그러나 이것은 HttpRequest 본문 만 가져옵니다. 나는 또한 머리말을 얻고 싶다. 원시 형식에서는 HTTP 요청이 본문 뒤에 오는 헤더 필드로 전송되므로 전체 요청의 원시 텍스트 표현을 가져올 수 있어야하지만 어떻게 처리 할 수는 없습니다.

+0

원시 형식의 TCP/IP 헤더를 가져 오려면 Socket 또는 TCPSocket을 사용해야합니다. – craig1231

+0

@ craig1231 팁 주셔서 감사 합니다만 TCP/IP 헤더 대신 HTTP 헤더를 참조하고 있습니다. 혼란을 드려 죄송합니다. – Oliver

답변

4

Headers 속성에서 가져올 수 있습니다 (이 점에 대한 사과는 분명한 제안입니다). "원시 형식으로 모든 것을 제공하십시오"와 같이 편리하지 않을 수도 있지만 코드는 한 번만 작성하면됩니다.

+0

그 때해야 할 것 같네요. 일반 텍스트 요청을 기록하고 싶기 때문에 필요하지 않으면 헤더 + 본문에서 다시 작성하려고하지 않았습니다. – Oliver

관련 문제