Получить httponly куки - C#
Формулировка задачи:
Здравствуйте, прошу помочь. Не могу получить все необходимые куки для авторизации, так как они httponly. Нашел пример кода, как их получить. Но не могу понять его и как с ним работать. Куда там в коде вписать адрес сайта, по которому нужно получить куки. И где указать контейнер webbrowser, где хранятся эти куки. Я через webbrowser автризуюсь на сайте, и потом через запросы парсю сайт.
[DllImport("wininet.dll", SetLastError = true)] public static extern bool InternetGetCookieEx( string url, string cookieName, StringBuilder cookieData, ref int size, Int32 dwFlags, IntPtr lpReserved); private const Int32 InternetCookieHttponly = 0x2000; /// <summary> /// Gets the URI cookie container. /// </summary> /// <param name="uri">The URI.</param> /// <returns></returns> public static CookieContainer GetUriCookieContainer(Uri uri) { CookieContainer cookies = null; // Determine the size of the cookie int datasize = 8192 * 16; StringBuilder cookieData = new StringBuilder(datasize); if (!InternetGetCookieEx(uri.ToString(), null, cookieData, ref datasize, InternetCookieHttponly, IntPtr.Zero)) { if (datasize < 0) return null; // Allocate stringbuilder large enough to hold the cookie cookieData = new StringBuilder(datasize); if (!InternetGetCookieEx( uri.ToString(), null, cookieData, ref datasize, InternetCookieHttponly, IntPtr.Zero)) return null; } if (cookieData.Length > 0) { cookies = new CookieContainer(); cookies.SetCookies(uri, cookieData.ToString().Replace(';', ',')); } return cookies; }
Решение задачи: «Получить httponly куки»
textual
Листинг программы
public CookieContainer kont() { { Uri site = new Uri("http://траляля"); BrCookie = GetUriCookieContainer(site); } return BrCookie; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д