如何使用开发者工具在Internet Explorer 11中查看cookie

250

我想知道如何在IE11中使用开发者工具查看设置的cookie。在网络分析中,我看到可以查看发送和接收的cookie选项,但这并不完全是同一件事情。由于每个请求都需要操作,所以使用起来很麻烦。肯定有一种方法可以像在IE10中那样查看所有cookie。


44
不确定为什么有人会投票关闭这个问题。这是一个关于一个在互联网上几乎没有文档的“开发工具”的问题。我已经彻底地查看了它并阅读了所有我能在网上找到的文档,但没有看到IE10中存在的标准cookie视图。 - KingOfHypocrites
12
知道这会很好。让微软来为你提供一堆新工具,做一堆你很少需要的东西,并拿走旧的有用的工具。这非常令人沮丧。 - Carl
5
我在Microsoft Connect上提交了一个问题,他们确认这个功能不可用。 - KingOfHypocrites
10
“Surely there must be a way...”,是啊,你是新来的微软员工吧?请问需要帮忙翻译什么内容? - jambriz
8
显然微软和开发者们完全不在同一频道上。他们如何创造出像Visual Studio这样伟大的产品,我实在无法理解。我已经放弃了,并且完全转向使用Chrome进行调试。 - KingOfHypocrites
显示剩余5条评论
7个回答

152
  1. 点击网络按钮
  2. 点击顶部工具栏上的绿色三角形按钮,启用网络流量捕获
  3. 与页面进行交互,捕获一些网络流量
  4. 点击详细信息/cookie
  5. 逐个浏览每个捕获的流量片段,将显示有关cookie的详细信息

36
这个方法与我在问题中提到的相同,但不同于以静态方式查看所有请求中的所有 cookie。 - KingOfHypocrites
7
这并不提供给你当前浏览器cookie存储的状态。你可以通过网络工具重新构建浏览器“应该”具有的内容,但像很多开发者一样,我需要在cookie丢失或损坏时测试功能。 - RhinoDevX64
同意这不是最好的方法(MS应该修复这个问题)......但是要获取当前状态,您可以通过控制台进行手动请求。对于jQuery:$.get('/'),对于ExtJS:Ext.Ajax.request({url: '/'})。请注意,即使页面不存在(即答案为404),这也应该起作用。您可能需要更改URL以避免在应用程序中破坏任何内容;-)。 - Nux
这会为用户启用Cookie吗?我通过远程会话解决了一个与Cookie相关的问题,启用后我无法再次复现该问题...当我关闭它时,Cookie仍然可以正常使用。因此,观察Cookie是否会更改Cookie设置? - aaandre
这个答案的问题在于,使用IE时我们无法在“网络”选项卡上保存请求历史记录。这意味着如果有重定向(例如OAuth2),我们无法检查Cookie,因为我们已经丢失了所有先前的HTTP请求。 - Jérôme MEVEL

44

在控制台中键入document.cookie怎么样? 这只会显示值,但也是有用的。

输入图像描述


1
它缺少所有细节,如cookie路径,cookie域等。 - Franklin Yu

14

更新2018,针对Microsoft Edge 开发人员工具

Edge 中的开发人员工具终于添加了管理和浏览 cookie 的支持。

注意: 即使您正在测试和支持 IE 目标,也最好利用 Edge 中的新工具来执行浏览器兼容性测试的重活儿,并在最后一步再检查 IE 11(等等)。

调试器面板 > Cookies 管理器

调试器标签页

网络面板 > 请求详细信息 > Cookies

网络标签页

当然,调试器标签页的好处是您不必在多个不同的历史请求中寻找单个 cookie。


2
天啊...好吧,我想这就解释了为什么每当我在新笔记本电脑上完成安装Windows 10后,我的第一件事就是去下载Chrome。微软真的不太擅长用户友好型,是吧...?;-) - Mike Gledhill
@MikeGledhill,不是说它太糟糕了,只是Chrome的工具更好。Chrome在浏览器中迭代和专注于开发人员工具。我认为这对他们来说是值得的,但他们每6周就变得更好,继续构建针对开发人员的功能。 - KyleMit

10

很抱歉告诉你,IE11中没有这种方法。

我已经困扰了一段时间,但最后不得不认为这是一个失去的过程,并手动导航到文件位置。

但文件在哪里?这取决于很多事情,我在不同的机器上找到它们在以下几个位置:

在Internet Explorer缓存中。

可以通过 "运行"(Windows+r)并输入 shell:cache 来完成,或者通过 IE11 中的 Internet 选项导航到它(AskLeo 有一篇很好的指南,与我无关)。

  • 点击齿轮图标,然后选择 Internet 选项。
  • 在“浏览历史记录”下面的常规选项卡中,点击“设置”。
  • 在“网站数据”对话框中,点击“查看文件”。
  • 这将打开我们感兴趣的文件夹:您的 Internet Explorer 缓存。

搜索 "cookie" 以查看仅 cookie。

在 Cookies 文件夹中

可以通过 regedit 找到 cookie 的路径:

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Cookies

常见路径(在 7 和 8 中)

%APPDATA%\Microsoft\Windows\Cookies

%APPDATA%\Microsoft\Windows\Cookies\Low

常见路径(Win 10)

shell:cookies

shell:cookies\low

%userprofile%\AppData\Local\Microsoft\Windows\INetCookies

%userprofile%\AppData\Local\Microsoft\Windows\INetCookies\Low


不幸的是,这并没有为您提供会话cookie。 - R. Schreurs

4

我认为我找到了你要寻找的内容,因为我也在寻找它。

您需要按照Pawel的步骤,然后转到名为“Cookie”的键。这将打开一个子菜单,其中包含所有cookie,它指定它们的名称、值、域等...

enter image description here

依次是:键、值、过期日期、域、路径。

这显示了此域的所有键。

因此,要再次到达那里:

  1. 转到网络。
  2. 捕获流量,绿色三角形。
  3. 进入详细信息。
  4. 进入具有无意义值的“Cookie”键。 (_utmc=xxxxx;something=ajksdhfa) 等...

6
这是与问题中提到的相同方法。问题是关于在IE 11中查看所有cookie的静态表示。 - joese
@joese 其他答案与问题中提到的方法有何不同?(除了在控制台中使用document.cookie) - Joze
2
@Joze,无论如何,您的解决方案都不适合查看浏览器为所有站点设置的所有 cookie。需要的是类似于 cookie 管理器的东西。 - pstarkov
2
@Joze,你的回答不是一个答案。就像你可以在这里粘贴如何获取用户代理字符串的知识一样。那会是一个答案吗?它应该被踩吗?如果你仍然不同意我的看法,请写下更好的理由来解释为什么要踩。 - pstarkov
1
我没有点踩,但我希望重复的答案被点踩。而且说“我在这里发帖多年了,看看我的声望”听起来很傲慢。 - Franklin Yu
显示剩余4条评论

3

0

目前你的回答不够清晰。请编辑并添加更多细节,以帮助其他人理解它如何回答所提出的问题。你可以在帮助中心找到有关如何撰写好答案的更多信息。 - Community

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接