使用 C# 在 asp.net 中发布多个数据并取回响应
本文关键字:数据 回响 响应 布多个 asp net 使用 | 更新日期: 2023-09-27 18:33:54
我正在尝试使用 C# asp.net 在"http://www.indianrail.gov.in/cgi_bin/inet_srcdest_cgi_time.cgi"处发布数据。问题是我使用的代码无法发布多个数据。当我在"http://www.indianrail.gov.in/cgi_bin/inet_trnnum_cgi.cgi"上只发布一个数据时,这段代码工作正常,但是当我尝试发布多个数据时,这不起作用。此外,每个输入数据都附加了一个隐藏字段,那么我与该隐藏字段有什么关系。
ASCIIEncoding encoding = new ASCIIEncoding();
string postData = "lccp_src_stncode=" + src;
postData += ("&lccp_dstn_stncode=" + des);
byte[] data = encoding.GetBytes(postData);
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("http://www.indianrail.gov.in/cgi_bin/inet_srcdest_cgi_time.cgi");
myRequest.Method = "POST";
myRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:11.0) Gecko/20100101 Firefox/11.0";
myRequest.ContentType = "application/x-www-form-urlencoded";
myRequest.ContentLength = data.Length;
Stream newStream = myRequest.GetRequestStream();
// Send the data.
newStream.Write(data, 0, data.Length);
newStream.Close();
HttpWebResponse response = (HttpWebResponse)myRequest.GetResponse();
//Get the stream containing content returned by the server.
newStream = response.GetResponseStream();
// Open the stream using a StreamReader for easy access.
StreamReader reader = new StreamReader(newStream,Encoding.UTF8);
// Read the content.
string responseFromServer = reader.ReadToEnd();
File.WriteAllText(@"C:'Users'Zohaib'Documents'Visual Studio 2010'WebSites'WebSite4'App_Data'data.txt", responseFromServer);
// Clean up the streams.
reader.Close();
newStream.Close();
response.Close();
在 POST 中,您只需提供数据流。 是流是包含"两个"东西,你只需将两者序列化为流。 在您的情况下,如果要发送多个查询字符串参数,只需在调用 GetBytes 之前将其添加到字符串中即可