如何从 Nuxt 3 中的可组合项获取 Cookie?

问题描述 投票:0回答:1

我正在尝试从可组合项访问存储在 cookie 或 localStorage 中的身份验证令牌。

// composables/useUser.ts
export const useUser = () => {
  const info = async () => {
    const config = useRuntimeConfig();

    try {
      const token = localStorage.getItem("auth_token");

      const { data } = await useFetch(
        `${config.public.baseURL}/users/info`,
        {
          method: "GET",
          headers: { Authorization: `Bearer ${token}` },
        }
      );

      const info = data.value.user;

      localStorage.setItem("user", info);
    } catch (error) {
      console.log(error);
    }
  };
};

我必须指定

process.client
才能访问文档或本地存储,这不适合我的情况。

nuxt.js nuxtjs3 nuxt3
1个回答
0
投票

要获取 cookie,您可以使用“useCookie”可组合项:

const { sth } = useCookie(cookieName)

对于 localStorage,由于您正在处理浏览器的 Web API,因此您必须确保在客户端而不是服务器端运行代码。

© www.soinside.com 2019 - 2024. All rights reserved.