我收到“远程服务器返回错误:(400)错误请求。”当我尝试以下代码时。
如果我直接在浏览器的地址栏中输入URL,它将返回正确的XML文件。
我使用注释掉的“// String url =”http://www.weather.gov/xml/current_obs/KDFW.xml“;”验证了我的代码的逻辑。“它返回一个XML转储。
同样,问题是浏览器地址栏将返回xml转储,但在代码中调用api会返回400错误。
String url = “http://api.flurry.com/eventMetrics/Event?apiAccessCode=YHJBA13CSKTMS6XHTM6M&apiKey=6XQY729FDU1CR9FKXVZP&startDate=2011-2-28&endDate=2011-3-1&eventName=Tip%20Calculated”; // String url =“http://www.weather.gov/xml/current_obs/KDFW.xml”;
HttpWebRequest webreq = (HttpWebRequest)WebRequest.Create(url); WebResponse res = webreq.GetResponse(); using (Stream stream = res.GetResponseStream()) { StreamReader reader = new StreamReader(stream, Encoding.UTF8); while (reader.Peek() >= 0) { memoEdit1.Text += reader.ReadLine() + System.Environment.NewLine; } }
我已经和这个问题摔跤了3天。任何帮助表示赞赏。
答案 0 :(得分:3)
我添加了以下内容,它解决了我的问题。
request.Accept = "application/xml";
希望这有助于其他人。