aboutsummaryrefslogtreecommitdiff
path: root/examples/ssr/src/pages/api/cart.ts
diff options
context:
space:
mode:
Diffstat (limited to 'examples/ssr/src/pages/api/cart.ts')
-rw-r--r--examples/ssr/src/pages/api/cart.ts12
1 files changed, 5 insertions, 7 deletions
diff --git a/examples/ssr/src/pages/api/cart.ts b/examples/ssr/src/pages/api/cart.ts
index d8bfa31a0..80db01f16 100644
--- a/examples/ssr/src/pages/api/cart.ts
+++ b/examples/ssr/src/pages/api/cart.ts
@@ -1,10 +1,9 @@
import { APIContext } from 'astro';
-import lightcookie from 'lightcookie';
import { userCartItems } from '../../models/session';
-export function get({ request }: APIContext) {
- let cookie = request.headers.get('cookie');
- let userId = cookie ? lightcookie.parse(cookie)['user-id'] : '1'; // default for testing
+export function get({ cookies }: APIContext) {
+ let userId = cookies.get('user-id').value;
+
if (!userId || !userCartItems.has(userId)) {
return {
body: JSON.stringify({ items: [] }),
@@ -23,11 +22,10 @@ interface AddToCartItem {
name: string;
}
-export async function post({ request }: APIContext) {
+export async function post({ cookies, request }: APIContext) {
const item: AddToCartItem = await request.json();
- let cookie = request.headers.get('cookie');
- let userId = lightcookie.parse(cookie)['user-id'];
+ let userId = cookies.get('user-id').value;
if (!userCartItems.has(userId)) {
userCartItems.set(userId, new Map());