
My website has public pages and non-public pages. Only a logged in user can access the non-public pages. My question is: how do we prevent non logged in people from accessing those pages.
The following nodejs controller method renders the view \admin\index
. What code needs to be added to prevent non logged in users from accessing the view?
exports.getIndex = async(req,res) => {
// How do I block this view from rendering if the user is not logged in?
// I.e. how do I check to see if there is a session record when this view is accessed?

Fetch the current user, if nothing is returned either don't render the page or redirect them to a login page.

Can the current User be fetched by a non logged in user?

if they're not logged in it will return nothing

I think in this case, an error would be generated.

try {
const user = await account.get();
} catch (error) {
redirect("login");
}

You can do something like this.

ok thanks Kenny.
Recommended threads
- my database attribute stuck in processin...
when i created attributes in collection 3 of those attributes become "processing", and they are not updating, the worst thing is that i cant even delete them s...
- Is Quick Start for function creation wor...
I am trying to create a Node.js function using the Quick Start feature. It fails and tells me that it could not locate the package.json file. Isn't Quick Start ...
- Forever Processing Issue
I encountered an issue when creating attributes in the collections . if you create an attribute of type string for example and choose a size of 200 or 250 or a...
