#javascript #cookies #next.js #frontend #react-cookie
Вопрос:
Я использую nextjs и хочу использовать файл cookie для обмена некоторыми данными на нескольких устройствах. когда я устанавливаю данные в файлах cookie на текущих устройствах и проверяю на другом устройстве, я вижу, что данных не существует.
в _app.js
import { CookiesProvider } from "react-cookie"
<CookiesProvider>
<UserProvider>
<CartProvider>
<Layout
>
<Component {...pageProps} />
</Layout>
</CartProvider>
</UserProvider>
</CookiesProvider>
в cartProvider
import { useCookies } from "react-cookie";
export default function CartProvider({ children }: Props) {
const [cookies, setCookie, removeCookie] = useCookies([
"cart_token",
"token",
]);
useEffect(()=>{
API.get(`cart/show/${temp_token ? temp_token : ""}`)
.then((res) => {
setCookie("cart_token", res.data.data.cart_token, {
path: "/",
maxAge: 3600 * 24 * 360,
sameSite: true,
});
})
},[])
}
Но когда я проверяю файл cookie на другом устройстве, я не могу увидеть cart_token в файле cookie
Комментарии:
1. Файлы cookie устанавливаются для каждого устройства, вы не можете получить доступ к файлам cookie, которые были установлены на другом устройстве.
Ответ №1:
Чтобы добавить комментарий @juliomalves, в вашем случае вам нужно будет сохранить элементы корзины в своем бэкэнде, а затем на новом устройстве, вернуть его, когда тот же пользователь войдет в систему