2012-10-30 99 views
0

通過下面的代碼,我可以請求一個帶有發佈參數的頁面。但是請求的頁面無法獲取參數。我將兩個文本框放到請求的頁面上,並將參數發送到此頁面。這段代碼有什麼問題?asp.net網頁請求發佈參數

private string PostForm(string _targetUrl, string _parameter1, string _parameter2) 
{ 

    WebRequest request = WebRequest.Create(_targetUrl); 

    request.Method = "POST"; 

    request.ContentType = "application/x-www-form-urlencoded"; 

    string postContent = string.Format("Textbox1={0}&Textbox2={1}", _parameter1, _parameter2); 

    byte[] postContentBytes = Encoding.ASCII.GetBytes(postContent); 

    request.ContentLength = postContentBytes.Length; 

    Stream writer = request.GetRequestStream(); 

    writer.Write(postContentBytes, 0, postContentBytes.Length); 

    writer.Close(); 

    HttpWebResponse testResponse = (HttpWebResponse)request.GetResponse(); 

    if (!testResponse.StatusDescription.Equals("OK", StringComparison.InvariantCultureIgnoreCase)) 
    { 
     Response.Write("Error"); 
    } 

    StreamReader sr = new StreamReader(testResponse.GetResponseStream()); 
    string returnvalue = sr.ReadToEnd(); 

    return returnvalue; 
} 
+0

你也應該發佈表單。 – ragatskynet

+0

如何發佈請求的頁面表單?對於示例,我沒有在頁面上放置按鈕。我應該提交一個提交按鈕並調用它嗎?如果是的話如何? – Oktay

+0

我可以用'Request.Form [「Textbox1」]''讀取參數。但頁面不能在頁面請求時立即設置文本框值。 – Oktay

回答

1

確保的目標頁面上的文本框輸入「姓名」是Textbox1Textbox2

+0

我相信Textbox1和Textbox2是正確的。 – Oktay

+0

您可以複製目標網頁的HTML代碼嗎? –

+0

' <頭RUNAT = 「服務器」> <表格ID = 「form1的」 RUNAT =「服務器「>

' – Oktay