Javascript cookie值未定义(react cookie 2.0.6)

Javascript cookie值未定义(react cookie 2.0.6),javascript,reactjs,cookies,react-redux,Javascript,Reactjs,Cookies,React Redux,我在实现v^2时遇到问题。我使用webpack dev server进行测试。 这是一个conlose日志: 警告:失败的上下文类型:上下文cookies在withCookies(App)中标记为所需,但其值是未定义的 在withCookies(应用程序)中 输入提供者 /App.jsx: import React, { Component } from 'react'; import { CookiesProvider, withCookies, Cookies} from 'react-co

我在实现v^2时遇到问题。我使用webpack dev server进行测试。
这是一个conlose日志:

警告:失败的上下文类型:上下文
cookies
withCookies(App)
中标记为所需,但其值是
未定义的

在withCookies(应用程序)中
输入提供者

/App.jsx:

import React, { Component } from 'react';
import { CookiesProvider, withCookies, Cookies} from 'react-cookie'
import {Route, Switch, BrowserRouter} from 'react-router-dom';

//import RequireAuth from './RequireAuth';
import NotFoundPage from './NotFoundPage';
import LandingPage from './LandindPage';
import WorkSpace from './WorkSpace';
import ActivationPage from './ActivationPage';

class App extends Component {
  render() {
    return (
      <CookiesProvider>
        <BrowserRouter>
          <Switch>
            <Route exact={true} path="/" component={LandingPage}/>
            <Route path="/workspace" component={WorkSpace}/>
            <Route exact path="/activation" component={ActivationPage}/>
            <Route path="*" component={NotFoundPage}/>
          </Switch>
        </BrowserRouter>
      </CookiesProvider>
    );
  }
}

export default withCookies(App);
import React,{Component}来自'React';
从“react cookie”导入{CookiesProvider,withCookies,Cookies}
从“react router dom”导入{Route,Switch,BrowserRouter};
//从“/RequireAuth”导入RequireAuth;
从“./NotFoundPage”导入NotFoundPage;
从“/LandindPage”导入LandingPage;
从“./WorkSpace”导入工作区;
从“/ActivationPage”导入ActivationPage;
类应用程序扩展组件{
render(){
返回(
);
}
}
导出默认cookies(应用程序);
/index.js:

import React from 'react';
import ReactDOM from 'react-dom';
import { createStore, applyMiddleware } from 'redux';
import reduxThunk from 'redux-thunk';
import reducers from './reducers';
import { Provider } from 'react-redux';

import App from './components/App';

const createStoreWithMiddleware = applyMiddleware(reduxThunk)(createStore);
const store = createStoreWithMiddleware(reducers);

ReactDOM.render(
  <Provider store = {store}>
    <App/>
  </Provider>
  ,
  document.getElementById('root'));
从“React”导入React;
从“react dom”导入react dom;
从“redux”导入{createStore,applyMiddleware};
从“redux thunk”导入redux thunk;
从“./reducers”导入减速机;
从'react redux'导入{Provider};
从“./components/App”导入应用程序;
const createStoreWithMiddleware=applyMiddleware(reduxThunk)(createStore);
const store=createStoreWithMiddleware(reducers);
ReactDOM.render(
,
document.getElementById('root');

似乎先前出现在
react cookie
npm包中的功能已移动到
universal cookie
。现在的相关例子是:

(所有学分归原始答案的作者)

HttpOnly 如果您确信自己正确使用了
universalcookie
(或类似软件包),但仍然得到
未定义的

检查(在源代码中)cookie的设置方式(或使用cookie inspector浏览器扩展进行检查,如,并检查
HttpOnly
属性)。
如果
HttpOnly
设置为
true
,则(根据定义)没有javascript能够访问它(即
HttpOnly
)。因此,该值将返回为
未定义

发件人:

限制对cookie的访问 JavaScript
文档无法访问具有
HttpOnly
属性的cookie;它只发送到服务器。例如,持久化服务器端会话的cookie不需要对JavaScript可用,并且应该具有HttpOnly属性。此预防措施有助于减轻跨站点脚本()攻击


所以,为了解决这个问题,我将react cookie库更改为universal cookie,它可以工作。但问题仍然是,为什么它没有定义?应该在服务器端定义它吗?(但在没有服务器的github上的自述文件中有一个例子)
import Cookies from 'universal-cookie';
const cookies = new Cookies();
cookies.set('myCat', 'Pacman', { path: '/' });
console.log(cookies.get('myCat')); // Pacman