我们有一个允许固件下载的网站。
沿途它使用StreamReader。由于某些未知原因,某些客户(以色列)收到400 Bad Request错误。其他人都没有收到这个错误。
那里的Any1经历过同样的事情吗?有人知道吗?
protected void Page_Load(object sender, EventArgs e)
{
string strURL = Request.Url.Host;
System.Net.WebRequest reqPT = System.Net.WebRequest.Create("http://" + strURL + "/Products/ProductTree.asp");
System.IO.StreamReader srPT = new System.IO.StreamReader(reqPT.GetResponse().GetResponseStream());
dvPT.Controls.Add(new LiteralControl(srPT.ReadToEnd()));
}
它只会在新的StreamReader上崩溃。
谢谢!
更新:我们注意到客户实际上在地址(strURL)中丢失了“www”,导致错误。为什么有人(点击与地球其他部分相同的链接)会松开www?我看到完全相同的代码有两种不同的行为:S
答案 0 :(得分:1)
由于HTTP 400错误,请求的网址可能无效,并且由于System.Net.WebRequest
中的文字看起来不错,我的猜测是您的以色列用户使用与所有人不同的Request.Url.Host
请求网页其他。您可以调试并验证strUrl
的价值吗?