import axios, { AxiosError } from 'axios'; import serversideConfig from '../../../serversideConfig'; import https from 'https'; let errorMsg = 'error'; //const { data } = useAuthState() export default eventHandler(async (event) => { const agent = new https.Agent({ rejectUnauthorized: false, }); const axiosInstance = axios.create({ headers: { 'Content-Type': 'application/json', Accept: "*", }, httpsAgent: agent }); const body = await readBody(event) // get user object from backend try { let res = await axiosInstance.post(`https://${serversideConfig.url}:${serversideConfig.port}/login`, { username: body.username, password: body.password, }); const sessionToken = res.data.token; const user = res.data.user; console.log('sessionToken: ', sessionToken); console.log('user: ', user); setResponseStatus(event, 200); const resBody = { token: sessionToken, message: 'Login successful' }; console.log('resBody: ', resBody); return resBody; } catch (err) { if (axios.isAxiosError(err)) { const axiosError = err as AxiosError; if (axiosError.response) { // Axios error //console.error(axiosError.response.data.message); //errorMsg = axiosError.response.data.message; } else if (axiosError.request) { // If error was caused by the request console.error(axiosError.request); } else { // Other errors console.error('Error', axiosError.message); } } else { // No AxiosError console.error('Error', err); } } throw createError({ statusCode: 400, statusMessage: errorMsg, }) }) /*import { loginSuccessful, sessionToken, errorMsg } from "../../middleware/login"; import { OutgoingMessage } from 'http'; export default defineEventHandler(async (event) => { if (!loginSuccessful) { throw createError({ statusCode: 400, statusMessage: errorMsg, }) } setResponseStatus(event, 200); //setResponseHeader(event, "Set-Cookie", sessionToken); const resBody = { token: sessionToken, message: 'Login successful' }; return resBody; })*/