2012-10-02 17 views
17

Necesito obtener la cadena de solicitud sin formato. A continuación se muestra un ejemplo de la solicitud http enviada al controlador. En realidad, necesito datos de publicación (última línea). ¿Cómo puedo obtener eso?Obtener la solicitud en bruto en ASP.NET MVC

Observe que no quiero utilizar el encuadernador de modelo JSON automático. En realidad, necesito el texto en bruto JSON

POST http://www.anUrl.com/CustomExport/Unscheduled HTTP/1.1 
Accept: application/json, text/javascript, */*; q=0.01 
Content-Type: application/json; charset=utf-8 
X-Requested-With: XMLHttpRequest 
Referer: http://www.anUrl.com/CustomExport 
Accept-Language: en-us 
Accept-Encoding: gzip, deflate 
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0) 
Host: localhost:8000 
Content-Length: 102 
Connection: Keep-Alive 
Pragma: no-cache 

{"runId":"1","fileDate":"8/20/2012","orderStartMinDate":"10/02/2012","orderStartMaxDate":"10/02/2012"} 

Esta última línea es lo que necesito. Esto no viene en

var input = new StreamReader(Request.InputStream).ReadToEnd(); 

Respuesta

21

En ese punto, la transmisión ya se ha leído hasta el final. Debe volver a establecer la posición de InputStream antes de poder leerlo usted mismo.

Request.InputStream.Position = 0; 
var input = new StreamReader(Request.InputStream).ReadToEnd(); 
+0

Gracias, el problema fue exactamente eso –

Cuestiones relacionadas