Skip to main content

Revoking Sessions

import express from "express"import { buildSchema } from 'graphql';import { graphqlHTTP } from 'express-graphql';import { verifySession } from "supertokens-node/recipe/session/framework/express";import { SessionRequest } from "supertokens-node/framework/express";
// ...
let app = express();
var GraphQLSchema = buildSchema(`  type Mutation {      signOut: String  }`);
function getResolvers(req: any, res: any) {    return {        signOut: async (_: any, context: any) => {            return new Promise(async (resolve, reject) => {                try {                    if (context.session !== undefined) {                        await context.session.revokeSession();                        resolve("Logged out");                    } else {                        resolve("Session does not exist");                    }                } catch (e) {                    reject(e);                }            });        },    };}
app.use("/graphQL", verifySession({ sessionRequired: false }), graphqlHTTP(async (req, res) => {    return {        schema: GraphQLSchema,        rootValue: getResolvers(req, res),        context: {            session: (req as SessionRequest).session,        }    };}))
Which frontend SDK do you use?
supertokens-web-js / mobile
supertokens-auth-react