cc-core-cli
Version:
Command Line Interface tool for generating project templates for the (Your Platform's Name) platform.
30 lines (29 loc) • 1.06 kB
text/typescript
import { requestLogout, getHeadersFromRequest } from '@shopstack/cs-admin-lib/server'
import Cookies from 'cookies'
import { NextApiRequest, NextApiResponse } from "next";
export default async (req: NextApiRequest, res: NextApiResponse) => {
if (req.method === 'POST') {
try {
const result = await requestLogout(getHeadersFromRequest(req))
const cookies = new Cookies(req, res)
cookies.set('token', '', {
path: '/',
sameSite: process.env.COOKIE_SAME_SITE || 'lax',
secure: process.env.COOKIE_SECURE === 'true',
httpOnly: process.env.COOKIE_HTTP_ONLY === 'true',
maxAge: 0
})
return res.status(200).json(result)
} catch (e) {
const cookies = new Cookies(req, res)
cookies.set('token', '', {
path: '/',
sameSite: process.env.COOKIE_SAME_SITE || 'lax',
secure: process.env.COOKIE_SECURE === 'true',
httpOnly: process.env.COOKIE_HTTP_ONLY === 'true',
maxAge: 0
})
return res.status(e.status).json(e.error)
}
}
}