CookieWebClient.cs 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Net;
  4. namespace PCL
  5. {
  6. // Token: 0x020000C7 RID: 199
  7. public class CookieWebClient : WebClient
  8. {
  9. // Token: 0x060005E3 RID: 1507 RVA: 0x00034258 File Offset: 0x00032458
  10. public CookieWebClient(CookieContainer container, Dictionary<string, string> Headers) : this(container)
  11. {
  12. try
  13. {
  14. foreach (KeyValuePair<string, string> keyValuePair in Headers)
  15. {
  16. base.Headers[keyValuePair.Key] = keyValuePair.Value;
  17. }
  18. }
  19. finally
  20. {
  21. Dictionary<string, string>.Enumerator enumerator;
  22. ((IDisposable)enumerator).Dispose();
  23. }
  24. }
  25. // Token: 0x060005E4 RID: 1508 RVA: 0x00005128 File Offset: 0x00003328
  26. public CookieWebClient() : this(new CookieContainer())
  27. {
  28. }
  29. // Token: 0x060005E5 RID: 1509 RVA: 0x00005136 File Offset: 0x00003336
  30. public CookieWebClient(CookieContainer container)
  31. {
  32. this.m_ServerField = new CookieContainer();
  33. this.resolverField = 600000;
  34. this.m_ServerField = container;
  35. }
  36. // Token: 0x060005E6 RID: 1510 RVA: 0x000342C0 File Offset: 0x000324C0
  37. protected override WebRequest GetWebRequest(Uri address)
  38. {
  39. WebRequest webRequest = base.GetWebRequest(address);
  40. HttpWebRequest httpWebRequest = webRequest as HttpWebRequest;
  41. if (httpWebRequest != null)
  42. {
  43. httpWebRequest.CookieContainer = this.m_ServerField;
  44. httpWebRequest.Timeout = this.resolverField;
  45. }
  46. return webRequest;
  47. }
  48. // Token: 0x060005E7 RID: 1511 RVA: 0x000342F8 File Offset: 0x000324F8
  49. protected override WebResponse GetWebResponse(WebRequest request, IAsyncResult result)
  50. {
  51. WebResponse webResponse = base.GetWebResponse(request, result);
  52. this.ReadCookies(webResponse);
  53. return webResponse;
  54. }
  55. // Token: 0x060005E8 RID: 1512 RVA: 0x00034318 File Offset: 0x00032518
  56. protected override WebResponse GetWebResponse(WebRequest request)
  57. {
  58. WebResponse webResponse = base.GetWebResponse(request);
  59. this.ReadCookies(webResponse);
  60. return webResponse;
  61. }
  62. // Token: 0x060005E9 RID: 1513 RVA: 0x00034338 File Offset: 0x00032538
  63. private void ReadCookies(WebResponse r)
  64. {
  65. HttpWebResponse httpWebResponse = r as HttpWebResponse;
  66. if (httpWebResponse != null)
  67. {
  68. CookieCollection cookies = httpWebResponse.Cookies;
  69. this.m_ServerField.Add(cookies);
  70. }
  71. }
  72. // Token: 0x0400035A RID: 858
  73. private readonly CookieContainer m_ServerField;
  74. // Token: 0x0400035B RID: 859
  75. public int resolverField;
  76. }
  77. }