I am using nuxt + aws amplify for the web app and I need to check if the user is authenticated to load the page details depending on that. I configured amplify so the user credentials are stored in the cookie instead of the local storage so all the information about the user can be retrieved from req.headers.cookie
, but the code below
async nuxtServerInit (props, ctx) {
const { Auth } = withSSRContext(ctx)
try {
const cognitoUser = await Auth.currentAuthenticatedUser()
console.log(cognitoUser)
} catch(error) {
console.error(error)
}
},
gives The user is not authenticated
My amplify config:
Amplify.configure({
sst: true,
Auth: {
identityPoolId: process.env.IDENTITY_POOL_ID,
userPoolId: process.env.USER_POOL_ID,
userPoolWebClientId: process.env.USER_POOL_CLIENT_ID,
region: 'eu-central-1',
mandatorySignIn: false,
cookieStorage: {
domain: isDev ? 'localhost;' : '.website.my',
path: '/',
expires: 1,
sameSite: 'strict',
secure: !isDev
},
authenticationFlowType: 'USER_PASSWORD_AUTH'
}
})
Login and auth work fine on client-side.