如何在Vuex和Quasar应用程序中使用createpersedstate



如何在vuex和quasar应用程序中使用createpersedstate?

我试图在我的应用程序的cookie中持续一些daos,但是数据没有写在cookie中。

我在做什么错?

事先感谢您对所有人的关注。

动作

function setUser ({ commit }) {
  axios.get(`/modulo/app`, { headers: { 'Authorization': 'Bearer ' + store.getters.getToken() } })
    .then(response => {
      commit('setUserMutation', response.data)
    })
    .catch(error => {
      if (!error.response) {
        console.log(error.response)
      }
    })
}

突变

const setUserMutation = (state, data) => { state.user = data }

Getters

function getUser (state) {
  return state.user
}

索引配置存储

export default function () {
  const Store = new Vuex.Store({
    modules: {
      auth
    },
    plugins: [createPersistedState(
      {
        paths: ['auth.setUserMutation'],
        storage: {
          getItem: key => Cookies.get(key),
          setItem: (key, value) => Cookies.set(key, value, { expires: 3, secure: true }),
          removeItem: key => Cookies.remove(key)
        }
      }
    )],
    strict: process.env.DEV
  })
  return Store
}

很可能是由于您在cookie.set

中使用的安全道具所致

安全

是对还是错,指示Cookie传输是否需要安全协议(HTTPS(。

-https://github.com/js-cookie/js-cookie

如果您在localhost上开发,则很可能不是使用https。

您可以使用Env Variable

将安全值设置为基于环境
secure: process.env.NODE_ENV === 'production'

相关内容

  • 没有找到相关文章

最新更新