如何设置和获取 cookie,使用 WinInet api url

如何设置和获取 cookie,使用 WinInet api url,第1张

可以尝试通过 HttpAddRequestHeaders 来添加自已的COOKIE:

char * lpszHeaders = "Cookie: Key=somevalue"

DWORD dwHeadersLength = strlen(lpszHeaders)

HttpAddRequestHeaders(hOpenRequest, lpszHeaders, dwHeadersLength, HTTP_ADDREQ_FLAG_ADD)

函数会返回成功,但实际上COOKIE可能并没有添加上去,建议在调用HttpOpenRequest时指定INTERNET_FLAG_NO_COOKIES选项。然而这个选项将阻止WinInet内部添加所需的COOKIE,因此你要负责所有必需的COOKIE。另一个函数InternetSetCookie也可以设置COOKIE,但我从未用过。

如果需要检查返回的COOKIE,可以尝试使用HttpQueryInfo,并将其中的dwInfoLevel设置为HTTP_QUERY_SET_COOKIE。

关于正确设置Cookies的方法

建议

一 在IE的"工具/Internet选项"的"常规"选项卡中,选择"设置/查看文件",查看所有保存到你电脑里的Cookies。这些文件通常是以 user@domain格式命名的(user是你的本地用户名,domain是所访问的网站的域名。)如果你使用NetsCape浏览器,应该就存放在"C: /PROGRAMFILES/NETS- CAPE/USERS/"里面,与IE不同的是,NETSCAPE是使用一个Cookie文件记录所有网站的Cookies。

二 打开"工具/Internet选项"中的"隐私"选项卡,调整Cookie的安全级别。

通常情况,可以调整到"中高"或者"高"的位置。

多数的论坛站点需要使用Cookie信息,如果你从来不去这些地方,可以将安全级调到"阻止所有Cookies"

如果只是为了禁止个别网站的Cookie,可以单击"编辑 "按钮,将要屏蔽的网站添加到列表中。

在"高级"按钮选项中,你可以对第一方Cookie和第三方的Cookie进行设置,第一方Cookie是你正在浏览的网站的Cookie,第三方Cookie是非正在浏览的网站发给你的Cookie,通常要对第三方Cookie选择"拒绝"。

你如果需要保存 Cookie,可以使用IE的"导入导出"功能,打开"文件/导入导出",按提示 *** 作即可。

祝您愉快!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/7915793.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存