Chciałbym wysłać do siebie szybki zrzut nagłówków żądań GET dla debugowania. Byłem w stanie to zrobić w klasycznej ASP po prostu za pomocą obiektu Request, ale Request.ToString()
nie działa. I następujący kod zwrócony pusty ciąg:Jak zrzucić nagłówki żądań ASP.NET na ciąg
using (StreamReader reader = new StreamReader(Request.InputStream))
{
string requestHeaders = reader.ReadToEnd();
// ...
// send requestHeaders here
}
+1 Wystarczy dodać linię wysłać go e-mailem i myślę, że jest to pełna odpowiedź (pytanie zostało oznaczone jako C#, więc nie uważam, że wersja VB.Net jest niezbędna). – amelvin
Pierwszy błąd KeyValuePair spowodował błąd przesyłania w czasie wykonywania, więc używam foreach (klucz łańcucha w Request.Headers) header + = key + "=" + Request.Headers [key] + Environment.NewLine; –
Możesz dołączyć do wszystkich danych przy użyciu metody string.Join: string.Join (Environment.NewLine, Request.Headers.AllKeys.Select (key => string.Format ("Key: {0}, Value: {1}", key, Request.Headers [key]))); Ta metoda jest szybsza niż twoja, ponieważ string.Join jest bardziej efektywny przy łączeniu kilku obiektów. –