使用 InternetGetCookieEx 获取webbrowser中的 cookie 包含 httponly

namespace AliLoginForm
{
    public class MyIECookie
    {

        //[DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true, CallingConvention = CallingConvention.Cdecl)]
        //static extern bool InternetGetCookieEx(string pchURL, string pchCookieName, StringBuilder pchCookieData, ref int pcchCookieData, int dwFlags, IntPtr lpReserved);
        //取出Cookie,当登录后才能取
        public static string GetCookieString(string url)
        {
            // Determine the size of the cookie
            uint datasize = 256;
            StringBuilder cookieData = new StringBuilder((int)datasize);
            if (!InternetGetCookieEx(url, null, cookieData, ref datasize, 0x00002000, IntPtr.Zero))
            {
                if (datasize < 0)
                    return null;
                // Allocate stringbuilder large enough to hold the cookie
                cookieData = new StringBuilder((int)datasize);
                if (!InternetGetCookieEx(url, null, cookieData, ref datasize, 0x00002000, IntPtr.Zero))
                    return null;
            }
            return cookieData.ToString();
        }

        [DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)]
        static extern bool InternetGetCookieEx(string pchURL, string pchCookieName, StringBuilder pchCookieData, ref System.UInt32 pcchCookieData, int dwFlags, IntPtr lpReserved);
    }
}

原文地址:https://www.cnblogs.com/cxlater/p/8349784.html

时间: 2024-08-10 12:02:29

使用 InternetGetCookieEx 获取webbrowser中的 cookie 包含 httponly的相关文章

获取WebBrowser全cookie 和 httpWebRequest 异步获取页面数据

获取WebBrowser全cookie [DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)] static extern bool InternetGetCookieEx(string pchURL, string pchCookieName, StringBuilder pchCookieData, ref int pcchCookieData, int dwFlags, object lpRe

获取列表中某一个文件夹下的列表项集合(不包含子文件夹对象,也不包含子文件夹中的列表项)

RT,方法如下: 1 SPListItemCollection GetSubItemsWithoutFoldersInParrentFolder(SPFolder parrent) 2 { 3 SPList list = parrent.Item.ParentList; 4 SPQuery query = new SPQuery(); 5 query.Folder = parrent; 6 query.Query = "<Where><Eq><FieldRef Na

sql 2012中获取表的信息,包含字段的描述

1.获取数据库中的表 select name from sysobjects where type='U' 2.获取表字段(此处是Route表) Select name from syscolumns Where ID=OBJECT_ID('Route') 3.获取表中字段的描述 SELECT value FROM ::fn_listextendedproperty (NULL, 'user', 'dbo', 'table', 'Route', 'column', default) 4.获取表的

Javascript中关于cookie的那些事儿

Javascript-cookie 什么是cookie? 指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密).简单点来说就是:浏览器缓存. cookie由什么组成? Cookie的形式: Cookie是由name=value形式成对存在的,Cookie字符串必须以分号作为结束符,Cookie除了name属性之外还存在其他4个相关属性. 设置Cookie的语法如下: set-Cookie:name=value;[expires=date];[path=d

漫谈JavaScript中的cookie

什么是cookie?简单来说,cookie就是网站服务器存放在我们计算机上的一小段(一般大小不超过4KB)用来识别和记录用户的个人信息的文本.HTTP协议是一种没有“状态”的传输协议,也就是说,服务器无法识别任意两次访问是否有同一个来源,这样就不能判断用户信息,从而也就不能针对特定用户做出个性化设置.为了解决这个问题,cookie技术应运而生. cookie具体是怎么运行的呢?举个栗子,当我们在网页上登录了一次邮箱后,下一次再登录,会发现我们的用户名(可能还有密码)已经出现在输入框中,不用再次手

js中利用cookie实现记住密码功能

js中利用cookie实现记住密码功能 在登录界面添加记住密码功能,我首先想到的是在java后台中调用cookie存放账号密码,大致如下: 1 HttpServletRequest request 2 HttpServletResponse response 3 Cookie username = new Cookie("username ","cookievalue"); 4 Cookie password = new Cookie("password

RTB竞价中的cookie mapping技术

首先通过一些关键词解释普及或者回顾一下背景, ADX: Ad exchange的简称.一般特指Ad exchange平台模块 DMP: Data Management Platform的简称.DMP存储了流量.受众的各种特征信息. DSP: Demand Side Platform的简称.可以看做流量的购买方,为广告主服务.广告主可以通过DSP购买流量,达到营销的目的.DSP可以接入ad exchange中,参与cpm竞价,购买所需要的受众流量. SSP: Supply Side Platfor

.NET 4.5 HttpClient 中使用Cookie

为了使用.NET 4.5的HttpClient从WIN2K3换成了WIN7.装VS2010,结果告诉我VS2010不支持.NET 4.5.又装VS2012,接着装.NET FRAMEWORK 4.5.2.结果第一次打开VS2012创建项目.提示我错误. 无奈求助度娘,顺利解决.打个补丁搞定.于是开始摸索HttpClient如何使用.网上的介绍还真是少的可怜..居然没找到一个使用COOKIE的列子.最后研究了半天终于找到地方了. async void Navigate(string uri) {

JavaScript中设置cookie的值

cookie 与 session 是网页开发中常用的信息存储方式.Cookie是在客户端开辟的一块可存储用户信息的地方:Session是在服务器内存中开辟的一块存储用户信息的地方.JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的,而cookie是运行在客户端的,所以可以用JS来设置cookie. 在ITOO项目中,系统需要页面之间的传值,现在假设页面A,和页面B,页面B需要页面A的一个参数,才可以进行后面的操作,那么我们就需要将