這使我有點瘋狂。我試圖做一些很簡單的事情,而且我之前做過很多次。只是試圖調用一個REST API。C#WebRequest將無法使用LinkShare的此鏈接
我試圖調用的GetMessage與端點=「http://feed.linksynergy.com/productsearch?token=717f8c8511725ea26fd5c3651f32ab187d8db9f4b208be781c292585400e682d &關鍵字= DVD」,它不斷地返回空字符串。如果我通過任何其他有效的URL,它將起作用。但是,如果我只是複製並粘貼到網頁瀏覽器的原始URL,它會返回正常!
任何智能開發人員能告訴我發生了什麼事嗎?
下面的代碼。提前致謝。
詹姆斯
公共字符串的GetMessage(串端點) { HttpWebRequest的請求= CreateWebRequest(端點);
using (var response = (HttpWebResponse)request.GetResponse())
{
var responseValue = string.Empty;
if (response.StatusCode != HttpStatusCode.OK)
{
string message = String.Format("POST failed. Received HTTP {0}", response.StatusCode);
throw new ApplicationException(message);
}
// grab the response
using (var responseStream = response.GetResponseStream())
{
using (var reader = new StreamReader(responseStream))
{
responseValue = reader.ReadToEnd();
}
}
return responseValue;
}
}
私人HttpWebRequest的CreateWebRequest(串端點) { VAR請求=(HttpWebRequest的)WebRequest.Create(端點);
request.Method = "GET";
request.ContentLength = 0;
request.ContentType = "text/xml";
return request;
}
不幸的是,你的代碼爲我工作。取回30278個字符的XML文檔;不知道你的結局會發生什麼。 – 2010-11-13 02:33:07
賠率是你遇到某種緩存/代理問題。它可以在任何可以訪問的其他機器上使用嗎? – Gabe 2010-11-13 02:49:57