如何将数据发布到网站

本文关键字:网站 数据 | 更新日期: 2023-09-27 18:18:00

我需要发布数据到一个网站。所以我在c# .net中创建了一个小应用程序,在那里我打开这个网站,并填写所有的控件(单选按钮,文本框,复选框等),从我的数据库值。在SUBMIT按钮上也有一个单击事件。然后,应用程序等待10-15秒,然后将响应从网页复制到我的数据库。

如你所见,这真是一个忙乱的过程。如果有成千上万的记录要上传,这个应用程序需要更长的时间(因为它等待15秒的响应)。

还有其他方式发布数据吗?我正在寻找的东西,如连接所有字段与它的值,并上传它像一个数据流。如果网站是https而不是http,这将如何工作?

如何将数据发布到网站

你可以使用HttpWebRequest来做到这一点,并且你可以将你想要发布的所有值连接到请求的单个字符串中。它可以看起来像这样:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://www.yoursite.com");
request.Method = "POST";
formContent = "FormValue1=" + someValue +
    "&FormValue2=" + someValue2 +
    "&FormValue=" + someValue2;
byte[] byteArray = Encoding.UTF8.GetBytes(formContent);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = byteArray.Length;
Stream dataStream = request.GetRequestStream();
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();
WebResponse response = request.GetResponse();
dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseFromServer = HttpUtility.UrlDecode(reader.ReadToEnd());
//You may need HttpUtility.HtmlDecode depending on the response
reader.Close();
dataStream.Close();
response.Close();

MSDN有一篇很棒的文章,详细介绍了如何使用WebRequest类发送数据。下面的链接:

http://msdn.microsoft.com/en-us/library/debx8sh9.aspx

是的,有一个WebClient类。查看文档。有一些有用的方法来进行GET和POST请求