在asp.net 中应用POST传递和接收XML文件以及参数.
?
使用POST方式可以向別的頁面發送請求,并獲取返回結果。
可以從一個頁面發送POST到另一個頁面,也可以在winform工程中使用HTTPRequest發送POST到一個頁面。我們拿ASP.NET的aspx頁面做個例子,從一個aspx頁面POST.aspx ,發送請求到Receive.aspx頁面。
1.首先,建立工程,添加兩個頁面,Post.aspx和Receive.aspx
?? 在post頁面中放一個BUTTON,在它的click方法中我們可以寫這樣的一段代碼:
private void Button1_Click(object sender, System.EventArgs e)
? {
//XML文件路徑
? string xmlFileName = Server.MapPath("File/Frame.xml");
?? HttpWebRequest req = null;
?? try
?? {
??? //設置要POST到的頁面URL,這里中文參數或者有特殊符號的,要進行編碼.
??? string url = "http://localhost/Receive.aspx" +
???????????????????????????? "?DwgFileName="+HttpUtility.UrlEncode("NNN+10111452505252706++2.bmp,NNN+10111457375757706++13.bmp")+
????????????? "&PltFileName="+HttpUtility.UrlEncode("NNN+10110934363434706++主頁.JPG");
?? //創建一個HttpWebRequest對象
??? req =? (HttpWebRequest) HttpWebRequest.Create(url);
?? //設置它提交數據的方式post
??? req.Method = "POST";
?? //設置 Content-type HTTP 標頭的值
??? req.ContentType = "text/xml";// "application/x-www-form-urlencoded;charset=gb2312";
???
??? using (StreamWriter requestWriter = new StreamWriter(req.GetRequestStream()))
??? {
??? //定義一個StreamReader對象,用于讀取xml文件的內容
???? StreamReader reader = new StreamReader(xmlFileName);
???? string ret = reader.ReadToEnd();
???? reader.Close();
???? requestWriter.WriteLine(ret);//將讀取的內容寫入到RequestStream中。
??? }
??? Response.Write("發出去了");
?? }
?? catch(Exception ex)
?? {
??? throw ex;
?? }
?? finally{
??
?? }
}
2. 再來看一下接收頁面Receive.aspx
??? 在Receive.aspx頁面的PageLoad方法中進行接收POST過來的請求。
private void Page_Load(object sender, System.EventArgs e)
? {
?? if(Request.RequestType == "POST")
?? {
??? //Response.ContentType = "text/xml";
??? string pltFileName = Request.QueryString["PltFileName"];//PLT文件名
??? string dwgFileName = Request.QueryString["DwgFileName"];//dwg文件名列表 :111.dwg,222.dwg,333.dwg.....
??? //接收并讀取POST過來的XML文件流
??? StreamReader reader = new StreamReader(Request.InputStream);
??? String xmlData = reader.ReadToEnd();
??????? try
??? {
???? //聲明一個XMLDoc文檔對象,LOAD()xml字符串
???? XmlDocument doc = new XmlDocument();
???? doc.LoadXml(xmlData);
???? //得到XML文檔根節點
???? XmlElement root = doc.DocumentElement;
???? .....進行自己對XML的操作。。。
}
總結
以上是生活随笔為你收集整理的在asp.net 中应用POST传递和接收XML文件以及参数.的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Delphi中关于Rtti的一些操作(一
- 下一篇: HAO3GP整站源码学生当时就蒙了