我正在尝试通过我的应用程序登录到一个网站。 我的做法是:
首先,我通过Fiddler了解了浏览器如何进行授权过程。 我检查了POST请求的构建方式,并试图重建它。 浏览器发送了4个cookie(Google Analytics),我试着设置它们:
CookieContainer gaCookies = new CookieContainer();
gaCookies.Add(new Cookie("__utma", "#########.###########.##########.##########.##########.#"));
gaCookies.Add(new Cookie("__utmb", "#########.#.##.##########"));
gaCookies.Add(new Cookie("__utmc", "#########"));
gaCookies.Add(new Cookie("__utmz", "#########.##########.#.#.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)"));
我只是将原始的cookie数据替换为#。
然后,我使用调试器逐步执行代码,在第一个gaCookies.Add被执行时,应用程序停止并出现错误。
System.ArgumentException: The parameter '{0}' cannot be an empty string. Parameter name: cookie.Domain
我想知道为什么会发生这种情况。Cookie的构造函数不需要指定域名,我不知道从哪里获取这个值?
如果你们中的任何人可以帮助我,那就太好了。
我不是网站开发人员或网络专家,所以对此并不了解。
如果没有“简短快速的答案”,是否有一个很好的资源可以让我学习相关知识呢?