I'm trying to follow the AWS Lambda recipe, but to...
# general
d
I'm trying to follow the AWS Lambda recipe, but to no success. I'm sure there are several things broken in my code, but first and foremost, for some reason, my
auth.js
and
user.js
can't find
middy
, though it's installed.
auth.js
Copy code
js
import supertokens from "supertokens-node";
// I had to specify "index.js" at the end or else it complained.
import { middleware } from "supertokens-node/framework/awsLambda/index.js";
import { getBackendConfig } from "./config.js";
import middy from "@middy/core";
import cors from "@middy/http-cors";

supertokens.init(getBackendConfig());

module.exports.handler = middy(middleware()).use(cors({
    origin: getBackendConfig().appInfo.websiteDomain,
    credentials: true,
    headers: ["Content-Type", ...supertokens.getAllCORSHeaders()].join(", "),
    methods: "OPTIONS,POST,GET,PUT,DELETE"
})).onError(request => {
    throw request.error;
});
user.js
Copy code
js
let supertokens = require("supertokens-node");
let { verifySession } = require("supertokens-node/recipe/session/framework/awsLambda");
let middy = require("@middy/core");
let cors = require("@middy/http-cors");
let { getBackendConfig } = require("./config");

supertokens.init(getBackendConfig());

const handler = async (event, _) => {
    return {
        statusCode: 200,
        headers: {
            "content-type": "application/json",
        },
        body: JSON.stringify({
            sessionHandle: event.session.getHandle(),
            userId: event.session.getUserId(),
            accessTokenPayload: event.session.getAccessTokenPayload(),
        }),
    };
};

module.exports.handler = middy(verifySession(handler))
    .use(
        cors({
            origin: getBackendConfig().appInfo.websiteDomain,
            credentials: true,
            headers: ["Content-Type", ...supertokens.getAllCORSHeaders()].join(", "),
            methods: "OPTIONS,POST,GET,PUT,DELETE",
        })
    )
    .onError((request) => {
        throw request.error;
    });
2 Views