我希望服務器以編程方式調用URL(ashx頁面)並將響應存儲爲字符串。使用HttpWebRequest似乎不會正常工作,因爲我不想在那裏重定向客戶端。如何以編程方式在ASP.NET中請求URL?
謝謝。
我希望服務器以編程方式調用URL(ashx頁面)並將響應存儲爲字符串。使用HttpWebRequest似乎不會正常工作,因爲我不想在那裏重定向客戶端。如何以編程方式在ASP.NET中請求URL?
謝謝。
如果你想調用另一個頁面並得到迴應作爲字符串,你可以使用WebClient
類。
var myWebClient = new WebClient();
string resultStr = myWebClient.DownloadString("http://www.google.com");
的ASHX裏面你應該使用Response.Redirect:
System.Web.HttpContext.Current.Response.Redirect("http://www.stackoverflow.com/");
或:
System.Web.HttpContext.Current.Server.Transfer("a path to a page on the same server");
在你的頁面,你可以做:
首先,您需要定義由「呼」你的意思:
如果用戶的瀏覽器導航到一個特定的網址是什麼?使用Response.Redirect()
ASP.Net頁面的輸出應該包含另一個URL的內容嗎?使用iframe
你想讓你的代碼檢索另一個URL的內容並處理它嗎?使用WebRequest.Create(),但請注意,該請求默認由IIS用戶提出。
我以爲HttpWebRequest的是 「易」 的方式,雖然。這有什麼不好?
Response.Redirect(「SomeURL」);
沒有發送請求的情況下無法接收回應。使用HttpWebRequest或簡化的WebClient類。
您可能想使用套接字。但這聽起來很瘋狂。你可以使用XMLHttpRequest對象,你知道MSXML2.XMLHttpRequest,但是這又瘋了。這是不是意味着「不發送字節信息」部分...
使用電話。你的意思是什麼? – 2009-08-20 17:47:37
爲什麼你不能使用HttpWebRequest? – 2009-08-20 17:54:34
他可能是在開玩笑的電話部分,但調用一個URL沒有任何意義。 – Amok 2009-08-20 17:54:56