关于C#中HttpWebRequest.Method“POST”的一些问题

时间:2013-10-25 20:04:07

标签: c# httpwebrequest

我会去添加一个简短版本:我如何知道我所指的是哪种形式,以及如何使用HttpWebRequest.Method = "POST"触发它?

彻底版
无法想到标题的任何好方法
无论如何,这是我的背景:

 HttpWebRequest request = (HttpWebRequest)WebRequest.Create("URL");
    request.Method = "POST";
    request.ContentType = "application/x-www-form-urlencoded";
    string form = "subject=Test&message=Hello world!";
    byte[] BA = Encoding.UTF8.GetBytes(form);
    request.ContentType = "application/x-www-form-urlencoded";
    request.ContentLength = BA.Length;
    Stream s_data = request.GetRequestStream();
    s_data.Write(BA, 0, BA.Length);
    s_data.Close();
    WebResponse res = request.GetResponse();
    s_data = res.GetResponseStream();
    StreamReader read = new StreamReader(s_data);
    string sr = read.ReadToEnd();
    read.Close();s_data.Close();res.Close();
    Console.WriteLine(sr);

    Console.ReadKey();

我从教程等中得到了很多部分内容,即使我对它的工作方式略有掌握,也有一些我无法找到答案的东西......
我的主要问题是,如何才能使CORRECT帖子值受到影响,以及如何实际触发表单?我完全不确定这是否正确:string form = "subject=Test&message=Hello world!";,但我尝试做的是将“Test”分配给$_POST["subject],将“Hello”分配给$_POST["message"]。我可能偏离轨道,所以在这种情况下,请告诉我。

编辑:“网址”确实是别的,现在当我想到它时,我甚至没有宣布表单名称......

1 个答案:

答案 0 :(得分:0)

如果您对值有疑问,请使用HttpUtility.UrlEncodeurldecode(在php中)

string form = "subject="+HttpUtility.UrlEncode(subject_value)+"&message="+HttpUtility.UrlEncode(message_value);

关于php

$var = isset($_POST["subject"]) ? $_POST["subject"] : null;

请记住在项目中添加System.Web引用