繁体   English   中英

URL在浏览器中工作,但不能从Web客户端或Web请求获得响应

[英]URL works in Browser but not get response from web Client or Web Request

我有关于服务器响应的问题。 (返回403禁止)。

当我在浏览器中检查相同的URL时,我可以看到该页面。

我写了下面的代码来获得回复。

相同的代码我在我的本地PC上执行,它工作正常。

 HttpWebRequest request = WebRequest.Create(RequestUrl) as HttpWebRequest;
                request.Method = "POST";
                request.CookieContainer = new CookieContainer();
                request.Timeout = 600000;
                request.Accept = "*/*";
                request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:18.0) Gecko/20100101 Firefox/18.0";

WebResponse response;
                try
                {
                    response = request.GetResponse();
                    string StatusDescription = ((HttpWebResponse)response).StatusDescription;

                    if (StatusDescription.ToLower() == "ok")
                    {
                        Stream dataStream = response.GetResponseStream();
                        //XmlDocument XmlResponse = new XmlDocument();
                        //XmlResponse.Load(dataStream);            
                        //XmlResponse.Save(Server.MapPath("~/XMLResponse.xml"));
                        StreamReader reader = new StreamReader(dataStream);
                        string responseFromServer = reader.ReadToEnd();
                        responseFromServer = responseFromServer.Replace(" ", "");
                        responseFromServer = responseFromServer.Replace("&", "&");
                        reader.Close();
                        dataStream.Dispose();
                        response.Close();
                        responseFromServer = GetStringsBetweenTags(responseFromServer, "<head>", "</head>");
                        return responseFromServer;
                    }
                    else
                    {
                        //To Do : add code for notify error via email
                    }
                }
                catch (Exception ex)
                {                   
                    WebClient webclient = new WebClient();
                    using (StreamReader reader = new StreamReader(webclient.OpenRead(RequestUrl)))
                    {
                        string responseFromServer = reader.ReadToEnd();
                        responseFromServer = responseFromServer.Replace("&nbsp;", "");
                        responseFromServer = responseFromServer.Replace("&", "&amp;");
                        reader.Close();
                        webclient.Dispose();
                        responseFromServer = GetStringsBetweenTags(responseFromServer, "<head>", "</head>");
                        return responseFromServer;

                    }

                }

下载提琴手(http://www.fiddler2.com/fiddler2/)

然后导航到URL并查看标题。 然后查看应用程序发送的标头。 您要发布帖子的网址清楚地预防某些请求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM