我一直用c#编写应用程序,通过get函数发送数据
就像这样
Http://www.myweb.com/co.php?a=10&b=20
我是c#web编程的新手,所以我想知道如何通过post函数发送相同的数据。因为如果我在php文件中使用$ _POST它没有得到值,我研究了一下,发现POST函数在主体而不是在URL中获取数据。
我只是将程序从GET转换为POST。任何帮助将不胜感激。
答案 0 :(得分:1)
您可以使用HttpWebRequest
,正确设置Method
和ContentType
属性:
var request = (HttpWebRequest)WebRequest.Create("http://www.myweb.com/co.php");
// your choice of encoding, I just picked ASCII here
var body = System.Text.Encoding.ASCII.GetBytes("a=10&b=20");
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = body.Length;
using (var stream = request.GetRequestStream()) {
stream.Write(body, 0, body.Length);
}
答案 1 :(得分:1)
如果您的目标是.NET 4.5,我建议您使用HttpClient,如果没有,那么我会选择WebClient:
WebClient webClient = new WebClient();
NameValueCollection values = new NameValueCollection();
values.Add("FirstName", "John");
values.Add("LastName", "Smith");
values.Add("Age", "46");
webClient.UploadValues("http://example.com/", values);