Как получить все заголовки, включая данные публикации, в классе веб-клиента? - PullRequest
0 голосов
/ 06 августа 2011

Я ищу пример кода, как получить все полученные заголовки в моем веб-приложении, включая данные публикации.

что-то как:

String headers = client.Headers.ToString(); 
Response.Write(headers); 

Вывод:

       POST http://localhost:52133/test/Default.aspx HTTP/1.1
        Host: localhost:52133
        User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:5.0.1) Gecko/20100101 Firefox/5.0.1
        Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
        Connection: keep-alive
        foo: baa
        Pragma: no-cache


      *the post data*

Возможно ли это?

Ответы [ 2 ]

1 голос
/ 08 августа 2011

Запрос. Заголовки не будут содержать опубликованные данные.Доступ к опубликованным данным можно получить через объект Request.Form, например:

 for(int i = 0; i < Request.Form.Count; i++)
 {
     string key = Request.Form.GetKey(i);
     string value = Request.Form[i];
     // now do something with the key-value pair...
 }
0 голосов
/ 06 августа 2011

Возможно, вам нужно свойство Request.ServerVariables.Вы можете выполнить цикл следующим образом:

Dim loop1, loop2 As Integer
Dim arr1(), arr2() As String
Dim coll As NameValueCollection

' Load ServerVariable collection into NameValueCollection object.
coll=Request.ServerVariables 
' Get names of all keys into a string array.
arr1 = coll.AllKeys 
For loop1 = 0 To arr1.GetUpperBound(0)
   Response.Write("Key: " & arr1(loop1) & "<br>")
   arr2 = coll.GetValues(loop1) ' Get all values under this key.
   For loop2 = 0 To arr2.GetUpperBound(0)
      Response.Write("Value " & CStr(loop2) & ": " & Server.HtmlEncode(arr2(loop2)) & "<br>")
   Next loop2
Next loop1

Те, которые начинаются с "HEADER_", являются необработанными заголовками HTTP.Для получения дополнительной информации см. Документацию MSDN IIS Server .

...