2011-08-23 11 views
0

펌웨어 다운로드를 허용하는 웹 사이트가 있습니다.StreamReader, 잘못된 요청 (400)

도중에 StreamReader가 사용됩니다. 어떤 알려지지 않은 이유로 일부 고객 (이스라엘)은 400 개의 잘못된 요청 오류를받습니다. 다른 모든 사람들은이 오류가 발생하지 않습니다.

같은 것을 경험 한 사람은 없습니까? 누구나 단서가 있니?

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

답변

1

잘 HTTP 400 오류로 요청한 URL이 유효하지 않으며 System.Net.WebRequest의 리터럴이 정상적으로 보입니다. 귀하의 이스라엘 사용자가 요청한 것 같습니다. 다른 Request.Url.Host을 사용하는 페이지입니다. strUrl의 값을 디버그하고 확인할 수 있습니까?

+0

내 추측이 될 것입니다. – JNappi

+0

@pseudocoder URL을 확인했는데 완벽합니다. 고객이 스크린 샷을 보냈습니다. 그러나 그의 FireFox는 히브리어로되어 있는데, 그것은 하나의 요소가 될 수 있습니까? – David

+0

@David 요청이 클라이언트 브라우저에 의해 공식화되지 않았으므로 중요하지 않아야합니다. 'strURL'이 원하는 값이면 모든 사용자에 대해 동일하게 처리되어야합니다. URL을 확인했다고 말하면 자신의 스크린 샷에서 검색 주소창을 확인하셨습니까? 그렇다면 자신의 요청을 처리하는 동안 서버 측에서 어떤 일이 일어나고 있는지 더 자세히 살펴야한다고 생각합니다. – pseudocoder

관련 문제