我有兩臺服務器。一個是私人服務器,我不希望用戶直接訪問它,另一個是公共訪問的服務器。 我可以通過URL訪問我的私人服務器,如:http://xxx.xx.xxx.xxx/檢索網站內容並將其返回到ASP.NET MVC 4
我想要做的是創建某種「代理」,只與我的私人服務器一起工作。我的想法是去:http://www.domain.com/server/path/here/something 本頁面應該顯示我,我有這方面的工作了的http://xxx.xx.xxx.xxx/path/here/something
的內容,但我可以使它工作的唯一辦法是返回的內容作爲一個字符串,然後瀏覽器將解釋HTML。 這適用於返回HTML內容的頁面,但它不起作用(當然),如果我想直接訪問.gif或任何類型的文件。
下面的代碼我目前有:
public string Index(string url)
{
string uri = "http://xxx.xx.xxx.xxx/" + url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Method = "GET";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader responseStream = new StreamReader(response.GetResponseStream());
string resultado = responseStream.ReadToEnd();
return resultado;
}
我怎樣才能改變我的代碼,以便它可以用於任何文件?
你不能用一個真正的代理來實現這個嗎? – marcoaoteixeira 2013-02-22 19:16:32
我不知道是否有更好的方法來做到這一點。 我只想從我的私人服務器獲取內容(通過使用我之前解釋的URL),並將其顯示在我的公共服務器上。 – 2013-02-22 19:28:58
公共服務器可以直接訪問私有服務器上的文件嗎?或者它是否必須是網絡請求? – Bobson 2013-02-22 19:48:40