当前位置:首页 > React

react如何接受cookie

2026-01-24 04:00:50React

在 React 中接收 Cookie

React 本身不直接处理 Cookie,但可以通过浏览器提供的 document.cookie API 或第三方库来实现。以下是几种常见方法:

使用 document.cookie 原生 API

通过 document.cookie 可以直接读取或设置 Cookie。读取时返回的是当前域名下的所有 Cookie 字符串,格式为 key=value 对,用分号分隔。

// 读取所有 Cookie
const allCookies = document.cookie;
console.log(allCookies); // 输出类似 "token=abc123; theme=dark"

// 解析特定 Cookie 值
function getCookie(name) {
  const value = `; ${document.cookie}`;
  const parts = value.split(`; ${name}=`);
  if (parts.length === 2) return parts.pop().split(';').shift();
}

const token = getCookie('token');

使用第三方库(如 js-cookie

js-cookie 是一个轻量级库,简化了 Cookie 操作:

import Cookies from 'js-cookie';

// 设置 Cookie
Cookies.set('username', 'john', { expires: 7 }); // 7天后过期

// 读取 Cookie
const username = Cookies.get('username');

// 删除 Cookie
Cookies.remove('username');

在服务端渲染(SSR)中处理

如果使用 Next.js 等框架,服务端可通过请求头 req.headers.cookie 获取 Cookie:

// Next.js API 路由示例
export default function handler(req, res) {
  const cookies = req.headers.cookie;
  // 解析逻辑...
}

与 HTTP 请求配合使用

发送请求时自动携带 Cookie(需设置 credentials):

fetch('/api/data', {
  credentials: 'include', // 包含 Cookie
});

注意事项

  • 安全性:避免存储敏感信息在 Cookie 中,必要时使用 HttpOnlySecure 标志。
  • 路径和域名:设置 Cookie 时注意 pathdomain 参数,确保可访问性。
  • 同源策略:跨域请求需配置 CORS 和 credentials

react如何接受cookie

标签: reactcookie
分享给朋友:

相关文章

react如何开发组件

react如何开发组件

React 组件开发基础 React 组件分为函数组件和类组件两种形式。函数组件是现代 React 开发的主流方式,结合 Hooks 可以实现完整功能。 函数组件示例: function Gree…

如何手写一个react

如何手写一个react

手写一个简单的 React 创建一个基础的 React 实现需要理解其核心概念:虚拟 DOM、组件、状态管理和渲染。以下是一个简化版的 React 实现。 创建虚拟 DOM 虚拟 DOM 是真实…

react 如何分页

react 如何分页

分页实现方法 在React中实现分页功能可以通过多种方式完成,具体取决于数据来源(如API或本地数据)和UI库的选择。以下是常见的实现方法: 使用本地数据分页 对于存储在组件状态或Context中…

react如何运行

react如何运行

运行React项目的步骤 安装Node.js 确保系统已安装Node.js(建议版本12以上),可从官网下载并安装。Node.js自带npm包管理器,用于后续依赖安装。 创建React项目 使用官…

react如何读

react如何读

React 的发音 React 的发音为 /riˈækt/(音标),读作“瑞-艾克特”。其中: “Re” 发音类似英文单词 “read” 的开头部分。 “act” 发音与英文单词 “act” 一致…

react如何动画

react如何动画

React 动画实现方法 React 中实现动画可以通过多种方式,包括原生 CSS、第三方库或 React 内置的动画解决方案。以下是几种常见方法: 使用 CSS 动画和过渡 通过 CSS 的 t…