My application worked 100% fine running on Localhost3000, but when I moved my NodeJS server to a hosted platform on Digital Ocean I started receiving the “id_token not present in TokenSet” when I try to login using screen_hint = ‘signup’ (Registering for my site). The login functionality works fine on the remote server when I logged in as a user already in Auth0, but when I try to register a new user, the actual registration works (The ID is created in Auth0), but the redirect doesn’t work anymore and I get the id_token set error instead of returning to my app.
It appears all of the help on this topic is specific to the /authorize api call, which I’m NOT using. Is it mandatory to use /authorize instead of /login now that I have a remote Node JS server? If it is possible to still use /login, do I need to set the parameters specifically on the login call with screen_hint = signup? Or do I need to set the parameters on the original Auth0 config use call? I would like to keep a simple approach and not use addl tokens if possible. Thanks!
I tried many combinations of the AuthorizationParams, but nothing seems to change my result…
response_type: “id_token”,
response_mode: “form_post”,
scope: “openid profile email”
response_type: ‘code’,
scope: ‘openid profile email’,
I have included my original code that worked on Localhost3000:
// ---- Original Code --------------------------------
const { auth } = require(‘express-openid-connect’);
const config = {
authRequired: false,
auth0Logout: true,
secret: ‘kjgfkjwehrasrjbadjbjhsdfjbsdfgjak9kb2agknxxxxx’, // changed
baseURL: ‘http://159.65.180.75’,
clientID: ‘xILNWHiJzCD9MOOltuo391jUROB7Al0Q’,
issuerBaseURL: ‘https://dev-ae79isjb.us.auth0.com’
};
app.use(auth(config));
// — later on, I register --------
res.oidc.login({
returnTo: ‘/callback’,
authorizationParams: {
screen_hint: ‘signup’
},
});
// ----- End original code -----------------------------------------