Pet*_*ron 49 c# asp.net asp.net-mvc
我想通过电子邮件快速转发GET请求的标题以进行调试.我以前只能使用Request对象在经典ASP中执行此操作,但Request.ToString()
不起作用.以下代码返回一个空字符串:
using (StreamReader reader = new StreamReader(Request.InputStream))
{
string requestHeaders = reader.ReadToEnd();
// ...
// send requestHeaders here
}
Run Code Online (Sandbox Code Playgroud)
San*_*nen 108
查看Request对象中的Headers属性.
C#
string headers = Request.Headers.ToString();
Run Code Online (Sandbox Code Playgroud)
或者,如果您希望以其他方式格式化:
string headers = String.Empty;
foreach (var key in Request.Headers.AllKeys)
headers += key + "=" + Request.Headers[key] + Environment.NewLine;
Run Code Online (Sandbox Code Playgroud)
VB.NET:
Dim headers = Request.Headers.ToString()
Run Code Online (Sandbox Code Playgroud)
要么:
Dim headers As String = String.Empty
For Each key In Request.Headers.AllKeys
headers &= key & "=" & Request.Headers(key) & Environment.NewLine
Next
Run Code Online (Sandbox Code Playgroud)
ame*_*vin 28
您可以打开页面上的跟踪,无痛地查看标题,cookie,表单变量,查询字符串等:
aspx的顶线开始:
<%@ Page Language="C#" Trace="true"
Run Code Online (Sandbox Code Playgroud)
对于那些在实现中缺少AllKeys
属性而遇到麻烦的人(像我一样) IHeaderDictionary
,这是我能够序列化字符串中的所有标头(在控制器操作内)的方式。
using System;
using System.Text;
// ...
var builder = new StringBuilder(Environment.NewLine);
foreach (var header in Request.Headers)
{
builder.AppendLine($"{header.Key}: {header.Value}");
}
var headersDump = builder.ToString();
Run Code Online (Sandbox Code Playgroud)
我正在使用 ASP.NET Core 3.1。
归档时间: |
|
查看次数: |
76461 次 |
最近记录: |