Authentication 登录gmail帐户

Authentication 登录gmail帐户,authentication,login,forms-authentication,gmail,Authentication,Login,Forms Authentication,Gmail,我需要能够登录到我的gmail帐户,然后我得到cookies,并将有权访问其他谷歌服务。但我不能登录我的gmail(或任何谷歌)帐户。我在这个网站上找到了一些如何做到这一点的帖子,但没有一篇适合我。我有: string formUrl = "https://www.google.com/accounts/ServiceLoginAuth"; string formParams = string.Format("Email={0}&Passwd={1}&a

我需要能够登录到我的gmail帐户,然后我得到cookies,并将有权访问其他谷歌服务。但我不能登录我的gmail(或任何谷歌)帐户。我在这个网站上找到了一些如何做到这一点的帖子,但没有一篇适合我。我有:

        string formUrl = "https://www.google.com/accounts/ServiceLoginAuth"; 
        string formParams = string.Format("Email={0}&Passwd={1}&signIn={2}&PersistentCookie={3}&GALX={4}",
            "autokuzov.top", "1QAZ2wsx", "Sign in", "yes", "CfFosrEhu-0");

        string cookieHeader;
        HttpWebRequest req = (HttpWebRequest)WebRequest.Create(formUrl);
        req.ContentType = "application/x-www-form-urlencoded";
        req.Referer = "https://www.google.com/accounts/ServiceLoginAuth";
        req.Method = "POST";

        req.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.7) Gecko/20100713 Firefox/3.6.7";
        req.AllowAutoRedirect = false;

        req.CookieContainer = new CookieContainer();
        req.Headers.Add(HttpRequestHeader.CacheControl, "no-cache=set-cookie");

        byte[] bytes = Encoding.ASCII.GetBytes(formParams);
        req.ContentLength = bytes.Length;
        using (Stream os = req.GetRequestStream())
        {
            os.Write(bytes, 0, bytes.Length);
        }
        WebResponse resp = req.GetResponse();

        using (StreamReader sr = new StreamReader(resp.GetResponseStream()))
        {
            string s = sr.ReadToEnd();
        }
响应返回:“浏览器的cookie功能已关闭。请将其打开。” 我还尝试了make req.Headers.Add(HttpRequestHeader.CacheControl,“no cache=set cookie”);但这也没有发生

有人知道哪里有问题吗

“浏览器的cookie功能 已关闭。请打开它。“


您可能需要在浏览器中启用第三方cookie。在某些浏览器中,默认情况下这些选项处于禁用状态。如果禁用第三方Cookie,在Firefox中使用Gmail Manager插件时,您会收到相同的警告。

当我向我的google帐户发出请求时,如何在C#中启用第三方Cookie。如果您是从web服务器在浏览器中运行此功能,您当然不能。出于安全原因,只有用户可以手动执行此操作。如果您将此作为外部应用程序运行,则可能是。