我使用以下代码制作HttpWebRequest并从响应流中呈现XML。
` HttpWebRequest req =(HttpWebRequest)HttpWebRequest.Create(url);
req.Accept =“ / ”;
req.Headers.Add(“UA-CPU”,“x86”);
req.UserAgent =“Mozilla / 4.0(兼容; MSIE 7.0; Windows NT 6.0; MS-RTC LM 8)”;
req.CookieContainer = new CookieContainer();
使用(HttpWebResponse resp =(HttpWebResponse)req.GetResponse())
{
使用(StreamReader reader = new StreamReader(resp.GetResponseStream()))
{
sb.Append(reader.ReadToEnd());
}
}`
它在我的本地服务器和测试服务器上工作正常,但在UAT服务器上,我收到响应为“使用此网站需要Cookie”。我不明白为什么会这样。如果我直接浏览到URL,则会生成有效的XML,但如果使用上面的代码则无效。有人可以帮忙吗?
答案 0 :(得分:0)
听起来服务器正在等待你没有发送的cookie。浏览到浏览器中的URL后,在位置栏中输入以查看Cookie:javascript:alert(document.cookie);