react如何获取cookie
获取Cookie的方法
在React中获取Cookie通常可以通过以下几种方式实现:
使用document.cookie
直接访问document.cookie可以获取当前页面的所有Cookie字符串。需要注意的是,这种方式获取的是所有Cookie,需要自行解析。
const allCookies = document.cookie;
console.log(allCookies); // 输出格式如: "name=value; name2=value2"
解析特定Cookie
如果需要获取特定的Cookie值,可以编写一个辅助函数来解析document.cookie。

function getCookie(name) {
const value = `; ${document.cookie}`;
const parts = value.split(`; ${name}=`);
if (parts.length === 2) return parts.pop().split(';').shift();
}
const myCookie = getCookie('cookieName');
console.log(myCookie);
使用第三方库
js-cookie库 js-cookie是一个轻量级的库,简化了Cookie的操作。
安装:

npm install js-cookie
使用:
import Cookies from 'js-cookie';
// 获取Cookie
const myCookie = Cookies.get('cookieName');
console.log(myCookie);
// 设置Cookie
Cookies.set('cookieName', 'value', { expires: 7 });
// 删除Cookie
Cookies.remove('cookieName');
服务器端获取Cookie
如果使用Next.js等框架,可以在服务器端通过请求头获取Cookie。
Next.js示例
export async function getServerSideProps(context) {
const cookies = context.req.headers.cookie;
console.log(cookies);
return {
props: {},
};
}
注意事项
- 使用
document.cookie时需注意同源策略,确保操作的是当前域下的Cookie。 - 某些HttpOnly Cookie无法通过JavaScript获取,只能通过服务器端访问。
- 在生产环境中,确保对Cookie进行适当的加密和安全处理。






