Получить httponly куки - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, прошу помочь. Не могу получить все необходимые куки для авторизации, так как они httponly. Нашел пример кода, как их получить. Но не могу понять его и как с ним работать. Куда там в коде вписать адрес сайта, по которому нужно получить куки. И где указать контейнер webbrowser, где хранятся эти куки. Я через webbrowser автризуюсь на сайте, и потом через запросы парсю сайт.
Листинг программы
  1. [DllImport("wininet.dll", SetLastError = true)]
  2. public static extern bool InternetGetCookieEx(
  3. string url,
  4. string cookieName,
  5. StringBuilder cookieData,
  6. ref int size,
  7. Int32 dwFlags,
  8. IntPtr lpReserved);
  9. private const Int32 InternetCookieHttponly = 0x2000;
  10. /// <summary>
  11. /// Gets the URI cookie container.
  12. /// </summary>
  13. /// <param name="uri">The URI.</param>
  14. /// <returns></returns>
  15. public static CookieContainer GetUriCookieContainer(Uri uri)
  16. {
  17. CookieContainer cookies = null;
  18. // Determine the size of the cookie
  19. int datasize = 8192 * 16;
  20. StringBuilder cookieData = new StringBuilder(datasize);
  21. if (!InternetGetCookieEx(uri.ToString(), null, cookieData, ref datasize, InternetCookieHttponly, IntPtr.Zero))
  22. {
  23. if (datasize < 0)
  24. return null;
  25. // Allocate stringbuilder large enough to hold the cookie
  26. cookieData = new StringBuilder(datasize);
  27. if (!InternetGetCookieEx(
  28. uri.ToString(),
  29. null, cookieData,
  30. ref datasize,
  31. InternetCookieHttponly,
  32. IntPtr.Zero))
  33. return null;
  34. }
  35. if (cookieData.Length > 0)
  36. {
  37. cookies = new CookieContainer();
  38. cookies.SetCookies(uri, cookieData.ToString().Replace(';', ','));
  39. }
  40. return cookies;
  41. }

Решение задачи: «Получить httponly куки»

textual
Листинг программы
  1.  public CookieContainer kont()
  2.         {
  3.             {
  4.             Uri site = new Uri("http://траляля");
  5.             BrCookie = GetUriCookieContainer(site);
  6.             }
  7.             return BrCookie;
  8.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут