方法一:

CInternetSession::GetCookie

This member function implements the behavior of the Win32 function InternetGetCookie, as
described in the Windows SDK.

static BOOL GetCookie( 
LPCTSTR pstrUrl, 
LPCTSTR pstrCookieName, 
LPTSTR pstrCookieData, 
DWORD dwBufLen 
); 
static BOOL GetCookie( 
LPCTSTR pstrUrl, 
LPCTSTR pstrCookieName, 
CString& strCookieData 
);

http://msdn.microsoft.com/en-us/library/vstudio/cff9kt47(v=vs.120).aspx

实现:

char * pszURL = "http://www.baidu.com/";
CInternetSession::GetCookie(pszURL, "", strCookie);
printf("%s\n", strCookie);

方法二:

InternetGetCookie

BOOL InternetGetCookie(
_In_     LPCTSTR lpszUrl,
_In_     LPCTSTR lpszCookieName,
_Out_    LPTSTR lpszCookieData,
_Inout_  LPDWORD lpdwSize
);

http://msdn.microsoft.com/en-us/library/ie/aa384710(v=vs.85).aspx

实现:

LPDWORD lpdwSize = new DWORD;
char strCookie_two[100] = {0};
InternetGetCookie(pszURL, NULL, strCookie_two, lpdwSize);
InternetGetCookie(pszURL, NULL, strCookie_two, lpdwSize);
printf("%s\n", strCookie_two);

方法三:

QueryInfo

	CInternetSession session("HttpClient");
CHttpFile* pfile = (CHttpFile *)session.OpenURL(pszURL);
CString strCookie_three;
pfile->QueryInfo(HTTP_QUERY_SET_COOKIE, strCookie_three);
printf("%s\n", strCookie_three);

Managing Cookies

//获取cookies的几种方法
#include <afxinet.h>
#include <atlstr.h>
#include <cstdio> int main()
{
char * pszURL = "http://blog.csdn.net/x_iya"; //方法一
printf("方法一:\n");
CString strCookie_one;
CInternetSession::GetCookie(pszURL, "", strCookie_one);
printf("%s\n", strCookie_one); //方法二
printf("方法二:\n");
LPDWORD lpdwSize = new DWORD;
char strCookie_two[100] = {0};
InternetGetCookie(pszURL, NULL, strCookie_two, lpdwSize);
InternetGetCookie(pszURL, NULL, strCookie_two, lpdwSize);
printf("%s\n", strCookie_two); //方法三
printf("方法三:\n");
CInternetSession session("HttpClient");
CHttpFile* pfile = (CHttpFile *)session.OpenURL(pszURL);
CString strCookie_three;
pfile->QueryInfo(HTTP_QUERY_SET_COOKIE, strCookie_three);
printf("%s\n", strCookie_three);
return 0;
}

VC获取cookies的几种方法的更多相关文章

  1. VC++获取IDC_EDIT的7种方法

    VC++获取IDC_EDIT的7种方法 http://blog.csdn.net/baizengfei/article/details/7997618 //第一种方法 int number1, num ...

  2. PHP中获取星期的几种方法

    PHP中获取星期的几种方法   PHP星期几获取代码: 1 date(l); 2 //data就可以获取英文的星期比如Sunday 3 date(w); 4 //这个可以获取数字星期比如123,注意0 ...

  3. C#获取当前路径的7种方法

    总结C#获取当前路径的7种方法 C#获取当前路径的方法如下: 1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName ...

  4. Java获取随机数的几种方法

    Java获取随机数的几种方法 .使用org.apache.commons.lang.RandomStringUtils.randomAlphanumeric()取数字字母随机10位; //取得一个3位 ...

  5. spring 获取 WebApplicationContext的几种方法

    spring 获取 WebApplicationContext的几种方法 使用ContextLoader WebApplicationContext webApplicationContext = C ...

  6. Struts2 后台获取路径的几种方法

    Struts2 后台获取路径的几种方法 package actions.app; import java.io.File; import org.apache.struts2.ServletActio ...

  7. 体温数据上传程序开发+获取时间的三种方法+DB Browser下载及安装

    今天开始了体温上传程序的开发 今日所学: 获取时间 (21条消息) (转)安卓获取时间的三种方法_sharpeha的博客-CSDN博客_安卓获取时间 DB Browser安装教程 (20条消息) sq ...

  8. VC调用javascript的几种方法

    第一种:通过execScript调用.这种方法,虽然操作方便,但不能获取返回值.m_spHtmlDoc->get_parentWindow(&m_pHtmlWindow);VARIANT ...

  9. VC++ 响应回车键的2种方法

    众所周知,VC++响应回车键经常用的方法是利用 BOOL PreTranslateMessage(MSG* pMsg) 截取回车键消息,如: if (pMsg->message == WM_KE ...

随机推荐

  1. 小小知识点(三十一)MU-MIMO和SU-MIMO分别表示什么?

    MU-MIMO是“Multi-User Multiple-InputMultiple-Output”的缩写,直译为“多用户多入多出技术”. SU-MIMO是“Single-User Multiple- ...

  2. .net core 开车记:Data Protection Key 过期问题与登录页面访问慢

    K8s 船还没修好,.net core 车又出了问题,开着 k8s 豪华邮轮.飚着 .net core 极品飞车的好事真是多磨. 自从我们用上 .net core ,就一直被 .net core 的一 ...

  3. es lucene搜索及聚合流程源码分析

    本文以TermQuery,GlobalOrdinalsStringTermsAggregator为例,通过代码,分析es,lucene搜索及聚合流程.1:协调节点收到请求后,将search任务发到相关 ...

  4. 梳理js数组去重中代码比较简洁的方案

    一.es6 Set去重 function removal(arr) { return Array.from(new Set(arr)) } let arr=[1,2,1,3,4,5,5] remova ...

  5. 我怎么感觉 ConcurrentDictionary<,> 不是线程安全的喃?

    直接上代码 class Program { static readonly ConcurrentDictionary<string, Person> Dic = new Concurren ...

  6. spark注册虚拟表和取消注册

    // spark应用程序终止前有效df.createOrReplaceGlobalTempView("tempViewName") 取消注册:spark.catalog.dropT ...

  7. JMeter——聚合报告

    AggregateReport 是 JMeter 常用的一个 Listener,中文被翻译为“聚合报告”. ​ 对于每个请求,它统计响应信息并提供请求数,平均值,最大,最小值,错误率,大约吞吐量(以请 ...

  8. Activiti接受任务(receiveTask)

    Activiti接受任务(receiveTask) 作者:Jesai 前言: Activiti接受任务(receiveTask)其实和Activiti的手动任务是差不多的,不过手动任务是直接通过,而A ...

  9. scala 对一个数组分组操作

    通常我们有一些需求,对一个数组两两进行翻转,通常就涉及到奇数偶数,否则就会出现数组index异常了,所以我们该怎么办呢? 虽然是一个入门级问题,但是我还是觉得这是一个很有意思的题目,因此写了一个对于通 ...

  10. 如何用rflask快速初始化Flask Restful项目

    如何用rflask快速初始化Flask Restful项目 说明 多啰嗦两句 我们在创建flask项目的时候,使用pycharm创建出来的项目比较简陋,而且随着项目的功能完善,项目目录结构会比较多,多 ...