Я пытаюсь подключиться к веб-серверу с помощью HttpWebRequest
и получить некоторые данные. Мне удалось связаться с помощью следующего кода:HttpWebRequest получить неверные данные
HttpWebRequest req= (HttpWebRequest)WebRequest.Create("https://www.companyabc.com/security?action=authenticate");
req.CookieContainer = new CookieContainer();
req.CookieContainer.Add(new Uri("https://www.companyabc.com"), new CookieCollection());
string postData = "account_id=xxxx&password=xxxx";
req.KeepAlive = true;
byte[] send = Encoding.Default.GetBytes(postData);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.ContentLength = send.Length;
req.UserAgent = "Mozilla/5.0 (Windows NT 6.3; rv:36.0) Gecko/20100101 Firefox/36.0";
Stream sout = req.GetRequestStream();
sout.Write(send, 0, send.Length);
sout.Flush();
sout.Close();
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
Чтобы получить данные, я использую:
CookieContainer cookieJar = req.CookieContainer;
foreach (Cookie cookie in res.Cookies)
{
cookieJar.Add(cookie);
}
req = (HttpWebRequest)WebRequest.Create("https://www.companyabc.com/inside?action=displayHierarchyList&hierarchyId=157259&hierarchyLevel=2&selectedIndexMarket=157259&showPrices=false&hLevel=group&random=1423017429960");
req.Method = "GET";
req.ContentType = "application/json";
req.CookieContainer = cookieJar;
req.AllowAutoRedirect = false;
res = (HttpWebResponse)req.GetResponse();
Stream dataStream = res.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
// Read the content.
string responseFromServer = reader.ReadToEnd();
Если я войти, используя веб-браузер и введите URL: https://www.companyabc.com/inside?action=displayHierarchyList&hierarchyId=157259&hierarchyLevel=2&selectedIndexMarket=157259&showPrices=false&hLevel=group&random=1423017429960
Я получаю следующая информация в формате Json:
{ "group" : [ { "id" : "159099", "name" : "Item1" }, { "id" :
"158028", "name" : "Item2" }, { "id" : "159097", "name" : "Item2" }, {
"id" : "158284", "name" : "Item4" }, { "id" : "157266", "name" :
"Item5" }, { "id" : "158282", "name" : "Item6" }, { "id" : "157280",
"name" : "Item7" }, { "id" : "157260", "name" : "Item8" }, { "id" :
"157274", "name" : "Item9" }, { "id" : "157276", "name" : "Item10" }
]}
Когда я использую HttpWebRequest
I получите следующее:
Извините. Произошла непредвиденная ошибка. Выйдите из системы, закройте все окна обозревателя и повторите попытку.
Я пробовал много вещей уже без везения, ваша помощь будет действительно оценена.
спасибо.