C# HTTP处理程序的Post方法

C# HTTP处理程序的Post方法,c#,asp.net,c#-4.0,C#,Asp.net,C# 4.0,我有一个训练员。当我用URL(也就是GET方法)调用它时,它会工作,因为我使用下面的处理程序代码获取值 var encodedUrl = HttpUtility.UrlEncode(context.Request.QueryString.ToString()); 当我从处理程序端使用下面的post方法时,如何获取值: using (var wb = new WebClient()) { var data = new NameValueCo

我有一个训练员。当我用URL(也就是GET方法)调用它时,它会工作,因为我使用下面的处理程序代码获取值

var encodedUrl = HttpUtility.UrlEncode(context.Request.QueryString.ToString());
当我从处理程序端使用下面的post方法时,如何获取值:

        using (var wb = new WebClient())
        {
            var data = new NameValueCollection();
            data["a"] = "a";
            data["b"] = "b";

            var response = wb.UploadValues("http://localhost:126/Web", "POST", data);
        }

当您收到http响应时,基本上取决于“内容类型”。这取决于你是否阅读它。 以下是有关此主题的参考资料:

例如,如果您决定接收“application/json”响应类型。您可以使用以下功能:

从我的示例中可以看出,您似乎正在尝试实现一个“application/x-www-form-urlencoded”,并且文章需要相应地格式化。以下是一个示例:


  • 但还有其他选择。我希望这就是你想要的答案。

    是不是上下文、请求、表单?…我不明白安东的意思?--HttpRequest的Form属性是在查询中发送的NameValueCollection。@AntonKovalenko应该是正确的。您的
    数据[“a”]
    值将作为
    var c=context.Request.Form[“a”]进行访问查看此答案-对于相同的问题。