如何解析 HTTP Cookie 标头并返回 JavaScript 中所有 cookie 名称-值对的对象?
Cookie 只是网络服务器发送到用户浏览器的小文本文件。它们包含以下数据。
- 具有实际数据的名称-值对。
- cookie 失效的到期日期。
- 它应该发送到的服务器的域和路径。
方法:要检索 JavaScript 中存储的所有 cookie,我们可以使用document.cookie属性,但该属性返回单个字符串,其中键值对由“;”分隔。如果我们可以将键值对存储到一个对象中,那就太好了,因为它会使检索过程更加容易。 JavaScript 没有为这种情况提供任何方法。所以让我们解决这个问题。
我们需要创建一个函数来解析 cookie字符串并返回一个包含所有 cookie 的对象。这将是一个简单的过程,包含以下步骤。
- 使用字符串 .split(“;”)从 cookie字符串中获取每个单独的键值对。
- 使用字符串.split(“=”)将键与每对中的值分开。
- 创建一个包含所有键值对的对象并返回该对象。
示例:请参阅以下代码中的注释以更好地理解。
Javascript
输出:
cookie gfg has value GeeksForGeeks.
cookie foo has value education.