如何使用ASP.NET 4.0 Web表单获取原始请求正文

如何使用ASP.NET 4.0 Web表单获取原始请求正文,asp.net,rest,request,Asp.net,Rest,Request,我正在尝试在ASP.NET 4.0 Web表单中获取原始请求正文。 请求[“param”]、请求.表单[“param”]、请求.查询字符串[“param”]不工作。 知道如何获取这些参数吗 您可以使用Request.InputStream // include this in the top of your page to use JavaScriptSerializer and Hashtable using System.Web.Script.Serialization; using Sy

我正在尝试在ASP.NET 4.0 Web表单中获取原始请求正文。
请求[“param”]、请求.表单[“param”]、请求.查询字符串[“param”]不工作。
知道如何获取这些参数吗


您可以使用
Request.InputStream

// include this in the top of your page to use JavaScriptSerializer and Hashtable
using System.Web.Script.Serialization;
using System.Collections;

...
using (var sr = new StreamReader(Request.InputStream))
{
    string body = sr.ReadToEnd();
    
    // Deserialize JSON to C# object
    // you can use some modern libs such as Newtonsoft JSON.NET instead as well
    JavaScriptSerializer serializer = new JavaScriptSerializer();
    Hashtable hashtable = serializer.Deserialize<Hashtable>(body);

    string name = hashtable["name"].ToString();
    string image = hashtable["image"].ToString();
    string price = hashtable["price"].ToString();

}

//将其包含在页面顶部以使用JavaScriptSerializer和Hashtable
使用System.Web.Script.Serialization;
使用系统集合;
...
使用(var sr=newstreamreader(Request.InputStream))
{
字符串体=sr.ReadToEnd();
//将JSON反序列化为C#对象
//您也可以使用一些现代的lib,比如newtonsoftjson.NET
JavaScriptSerializer serializer=新的JavaScriptSerializer();
Hashtable Hashtable=序列化程序。反序列化(正文);
字符串名称=哈希表[“名称”]。ToString();
字符串image=hashtable[“image”].ToString();
字符串价格=哈希表[“价格”]。ToString();
}

您如何准确发布参数?来自javascript?你能显示你的javascript调用吗?您希望在何处访问表单值?在代码隐藏中?@Homungus我附加了一张图片。这在我看来不像WebForms:)。如果您想在Request.Form中获取这些值,您需要将它们放在客户端的表单中。在您的情况下,当您使用postman时,请使用
表单数据
-选项卡而不是
原始
-选项卡,并将键值对放在那里。
// include this in the top of your page to use JavaScriptSerializer and Hashtable
using System.Web.Script.Serialization;
using System.Collections;

...
using (var sr = new StreamReader(Request.InputStream))
{
    string body = sr.ReadToEnd();
    
    // Deserialize JSON to C# object
    // you can use some modern libs such as Newtonsoft JSON.NET instead as well
    JavaScriptSerializer serializer = new JavaScriptSerializer();
    Hashtable hashtable = serializer.Deserialize<Hashtable>(body);

    string name = hashtable["name"].ToString();
    string image = hashtable["image"].ToString();
    string price = hashtable["price"].ToString();

}