0

我一直在用 c# 编写一个应用程序,它的数据是通过 get 函数发送的

就像这样

Http://www.myweb.com/co.php?a=10&b=20

我是 c# web 编程的新手,所以我想知道如何通过 post 函数发送相同的数据。因为如果我在 php 文件中使用 $_POST 它不会得到值,我研究了一下,发现 POST 函数在正文中而不是在 URL 中获取数据。

我只是将程序从 GET TO POST 转换。任何帮助将不胜感激。

4

2 回答 2

1

您可以使用HttpWebRequest, 适当地设置MethodContentType属性:

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);
}
于 2012-11-02T20:52:49.187 回答
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);
于 2012-11-02T21:00:17.873 回答