2011-02-10 25 views
0

我有一個C#.net webform,以內容類型JSON格式進行簡單的response.write。它對我測試過的每個客戶端都有很好的效果 - 包括來自Android手機的TinyWebDB API調用......但不用擔心這個問題的API。C#.net System.Net.WebClient ..服務器端或不是?

我在Web表單中添加了一些服務器端代碼來讀取和刮取網頁,如下所示。

System.Net.WebClient myWebClient = new System.Net.WebClient(); 
Stream myStream = myWebClient.OpenRead(what); 
StreamReader sr = new StreamReader(myStream); 
string s = sr.ReadToEnd(); 

我的印象是代碼是所有服務器端!?

我測試了IE,FF和Chrome的頁面。所有的工作都很棒。但是,如果我嘗試從TinyWebDB調用Web表單頁面,調用效果很好,並且我獲取數據,但是在服務器端讀取網頁時出現404錯誤?

這幾乎就像System.Net.WebClient需要一些東西或正在客戶端上做某些事情一樣。我認爲閱讀這個頁面在我的服務器端和後臺都是發生的。爲什麼我的服務器端代碼關心什麼瀏覽器或API發起了對webform的調用?

我應該使用其他課程嗎?

很多謝謝。

+3

它不可能在客戶端上「做某事」:代碼在服務器上。你錯了,問題是別的 – 2011-02-10 15:58:11

+0

更多信息是必要的。有沒有什麼東西,可能是一個查詢字符串變量或一個Web方法,來確定這個代碼是否被調用?由於它在服務器端運行,因此只有這些實現細節可能會導致不同的行爲,如果服務器相同但客戶端不同。 – Kris 2011-02-10 16:01:27

回答

0

這是服務器端代碼。

變量「what」被設置在哪裏?表單TinyWebDB客戶端是否在爲表單輸入值傳遞?

您請求的網站是否有可能拒絕您的請求,因爲您打到的速度太快,而您每次只是因爲該客戶端而感到不幸?