2011-10-13 100 views
0

我能夠讀取URL和整個頁面,但無法讀取C#中的HTTP POST請求消息參數。 在我的情況我張貼帖子的網址到現場後,他們確認,他們給我一個HTTP POST消息中包含的ID參數。如何讀取HTTP POST請求消息的參數在C#

這是我在C#

HttpWebRequest request1 = (HttpWebRequest)WebRequest.Create(uri); 

postsourcedata = "processing=true&Sal=5000000"; 

request1.Method = "POST"; 
request1.ContentType = "application/x-www-form-urlencoded"; 
request1.ContentLength = postsourcedata.Length; 
request1.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"; 
Stream writeStream1 = request1.GetRequestStream(); 
UTF8Encoding encoding1 = new UTF8Encoding(); 
byte[] bytes1 = encoding1.GetBytes(postsourcedata); 
writeStream1.Write(bytes1, 0, bytes1.Length); 
writeStream1.Close(); 
HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 
Stream responseStream = response.GetResponseStream(); 
StreamReader readStream = new StreamReader(responseStream, Encoding.UTF8); 
string page = readStream.ReadToEnd(); 
//page.Close(); 
return page.ToString(); 

代碼他們送我的請求參數,如ID和文字,如何閱讀我的side.I這些參數正在通過Web服務發佈到網站上。

任何人都可以幫助我嗎?

回答

2

如果他們向你發送HTTP POST消息,這意味着你要麼需要有一個瞭解HTTP協議來處理請求的web服務器什麼的,對嗎?

我的意思是,通過你的描述,它看起來像他們向您發送一個HTTP請求到端口80或443(HTTPS),你應該有asp.net頁面來處理請求。一旦他們打到那個頁面,你可以簡單地做:

Request.Parameters("Id") 
Request.Parameters("Text") 

等等。

+0

在我的情況,我使用Web服務方法做帖子的網址,以他們的網站,他們再次回來後與我需要捕捉只有一個參數的參數。 – shesi

+0

@Shesi沒關係,所以你有一個網站,他們回來發佈。你知道他們發回的頁面嗎?對你而言,這是一個普通的HTTP請求,你可以在'Page_Load'上處理。我會想象他們回到發起行動的頁面。 – Icarus

+0

是的,他們張貼回web服務是否有可能讀取web方法中的參數,我試過request.RequestUri我能夠得到它所響應的網址,但不是參數 – shesi