erichosick
07/03/2023, 4:47 AM// For lambda fronted by httpAPI Gateway
...
logger.js:31 com.supertokens {message: "saveTokensFromHeaders: Saving updated tokens from the response headers", supertokens-website-ver: "17.0.0"}
logger.js:31 com.supertokens {message: "fireSessionUpdateEventsIfNecessary returning early because the front token was not updated", supertokens-website-ver: "17.0.0"}
// For local dev computer backend
logger.js:31 com.supertokens { message: "saveTokensFromHeaders: Saving updated tokens from the response headers", supertokens-website-ver: "17.0.0"}
logger.js:31 com.supertokens { message: "saveTokensFromHeaders: Setting sFrontToken: {long token}", supertokens-website-ver: "17.0.0"}
The line of code that has a different is in saveTokensFromHeaders (see https://github.com/supertokens/supertokens-website/blob/469421261802a73ca7439e9de039e7d56e53ca9d/lib/build/xmlhttprequest.js#L815)
// frontToken has a value with backend, but no value with lambda fronted by httpAPI Gateway
frontToken = response.headers.get("front-token");
It feels like the front-token
HEADER is not getting returned by the lambda fronted by httpAPI Gateway.
2.5 days of trying to figrue this out. Any ideas?rp_st
07/03/2023, 5:06 AMerichosick
07/03/2023, 5:07 AMexport const SuperTokensConfig = {
framework: 'awsLambda',
supertokens: {
// These are the connection details of the app created on supertokens.com
connectionURI: env.superTokenAppUrl,
apiKey: env.superTokenAppApiKey,
},
appInfo: {
// learn more about this on https://supertokens.com/docs/passwordless/appinfo
appName: 'Qloogle',
apiDomain: getApiDomain(),
websiteDomain: getWebsiteDomain(),
apiBasePath: '/auth',
websiteBasePath: '/',
apiGatewayPath: '/',
},
// recipeList contains all the modules that you want to use from SuperTokens.
// See the full list here: https://supertokens.com/docs/guides
recipeList: [
Passwordless.init({
contactMethod: 'EMAIL',
flowType: 'USER_INPUT_CODE',
}),
Session.init(),
Dashboard.init(),
UserRoles.init(),
UserMetadata.init(),
],
isInServerlessEnv: true,
};
erichosick
07/03/2023, 5:07 AMrp_st
07/03/2023, 5:07 AMerichosick
07/03/2023, 5:12 AMSTART
2023-07-02 22:10:41.654 INFO undefined
2023-07-02 22:10:41.654 INFO undefined
2023-07-02 22:10:41.654 INFO undefined
2023-07-03T05:10:41.653Z com.supertokens {t: "2023-07-03T05:10:41.653Z", message: "middleware: Started", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.654Z com.supertokens {t: "2023-07-03T05:10:41.654Z", message: "middleware: requestRID is: passwordless", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.654Z com.supertokens {t: "2023-07-03T05:10:41.654Z", message: "middleware: Checking recipe ID for match: passwordless", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-02 22:10:41.655 INFO undefined
2023-07-02 22:10:41.655 INFO undefined
2023-07-03T05:10:41.655Z com.supertokens {t: "2023-07-03T05:10:41.654Z", message: "middleware: Matched with recipe ID: passwordless", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.655Z com.supertokens {t: "2023-07-03T05:10:41.655Z", message: "middleware: Request being handled by recipe. ID is: /signinup/code/consume", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-02 22:10:41.709 INFO undefined
2023-07-03T05:10:41.709Z com.supertokens {t: "2023-07-03T05:10:41.709Z", message: "createNewSession: Started", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-02 22:10:41.710 INFO undefined
2023-07-03T05:10:41.710Z com.supertokens {t: "2023-07-03T05:10:41.709Z", message: "createNewSession: Wrapping done", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
erichosick
07/03/2023, 5:13 AM2023-07-02 22:10:41.749 INFO undefined
2023-07-02 22:10:41.749 INFO undefined
2023-07-02 22:10:41.749 INFO undefined
2023-07-03T05:10:41.749Z com.supertokens {t: "2023-07-03T05:10:41.749Z", message: "createNewSession: Access token payload built", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.749Z com.supertokens {t: "2023-07-03T05:10:41.749Z", message: "createNewSession: using transfer method cookie", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.749Z com.supertokens {t: "2023-07-03T05:10:41.749Z", message: "createNewSession: Started", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-02 22:10:41.769 INFO undefined
2023-07-02 22:10:41.769 INFO undefined
2023-07-03T05:10:41.769Z com.supertokens {t: "2023-07-03T05:10:41.769Z", message: "createNewSession: Finished", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.769Z com.supertokens {t: "2023-07-03T05:10:41.769Z", message: "parseJWTWithoutSignatureVerification: version from header: 3", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
erichosick
07/03/2023, 5:13 AM2023-07-02 22:10:41.770 INFO undefined
2023-07-02 22:10:41.770 INFO undefined
2023-07-02 22:10:41.770 INFO undefined
2023-07-03T05:10:41.770Z com.supertokens {t: "2023-07-03T05:10:41.770Z", message: "createNewSession: Session created in core built", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.770Z com.supertokens {t: "2023-07-03T05:10:41.770Z", message: "createNewSession: Cleared old tokens", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.770Z com.supertokens {t: "2023-07-03T05:10:41.770Z", message: "setToken: Setting access token as cookie", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-02 22:10:41.773 INFO undefined
2023-07-02 22:10:41.773 INFO undefined
2023-07-02 22:10:41.773 INFO undefined
2023-07-02 22:10:41.773 INFO undefined
2023-07-03T05:10:41.773Z com.supertokens {t: "2023-07-03T05:10:41.773Z", message: "setToken: Setting refresh token as cookie", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.773Z com.supertokens {t: "2023-07-03T05:10:41.773Z", message: "createNewSession: Attached new tokens to res", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.773Z com.supertokens {t: "2023-07-03T05:10:41.773Z", message: "Sending response to client with status code: 200", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
2023-07-03T05:10:41.773Z com.supertokens {t: "2023-07-03T05:10:41.773Z", message: "middleware: Ended", file: "/var/task/src/functions/auth/handler.js:9942:25" sdkVer: "14.1.2"}
END Duration: 155.42 ms Memory Used: 111 MB
erichosick
07/03/2023, 5:13 AMerichosick
07/03/2023, 5:13 AMerichosick
07/03/2023, 5:14 AMimport supertokens from "supertokens-node";
import { middleware } from "supertokens-node/framework/awsLambda";
import SuperTokensConfig from './supertoken-backend-config';
import middy from "@middy/core";
import cors from "@middy/http-cors";
import env from './env-backend-config';
supertokens.init(SuperTokensConfig);
const postAuth = middy(middleware()).use(cors({
origin: env.reactAppWebsiteUrlDomain,
credentials: true,
headers: ["Content-Type", ...supertokens.getAllCORSHeaders()].join(", "),
methods: "OPTIONS,POST,GET,PUT,DELETE"
})).onError(request => {
throw request.error;
});
export default postAuth;
rp_st
07/03/2023, 5:16 AMrp_st
07/03/2023, 5:20 AMerichosick
07/03/2023, 5:20 AM{
"status": "OK",
"createdNewUser": false,
"user": {
"email": "{the email}",
"id": "b95499f7-06df-49cd-acbd-829d96187b19",
"timeJoined": 1686781
141650
}
}
erichosick
07/03/2023, 5:23 AMrp_st
07/03/2023, 5:23 AMrp_st
07/03/2023, 5:24 AMerichosick
07/03/2023, 5:26 AM{
"status": "OK",
"createdNewUser": false,
"user": {
"email": "{same user email}",
"id": "b95499f7-06df-49cd-acbd-829d96187b19",
"timeJoined": 1686781141650
}
}
erichosick
07/03/2023, 5:27 AMFront-Token:
rp_st
07/03/2023, 5:28 AMrp_st
07/03/2023, 5:29 AMerichosick
07/03/2023, 5:30 AMerichosick
07/03/2023, 5:32 AMrp_st
07/03/2023, 5:32 AMrp_st
07/03/2023, 5:35 AMrp_st
07/03/2023, 5:41 AMrp_st
07/03/2023, 5:41 AMrp_st
07/03/2023, 5:42 AMerichosick
07/03/2023, 5:45 AMrp_st
07/03/2023, 5:46 AMrp_st
07/03/2023, 5:46 AMerichosick
07/03/2023, 5:49 AMerichosick
07/03/2023, 5:49 AMrp_st
07/03/2023, 5:50 AMerichosick
07/03/2023, 6:11 AMSuperTokens is an open source authentication solution offering features like: Different types of login: Email / password, Passwordless (OTP or Magic link based).
Powered by