Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
// },
formatError: (error: GraphQLError) => {
console.log(error.message);
console.log(error.locations);
console.log(error.stack);
return {
message: error.message,
locations: error.locations,
stack: error.stack,
};
},
};
};
const graphqlServer = graphqlHttp(graphqlSettingsPerReq);
// graphql batch query route
router.all('/graphql/batch', bodyParser(), graphqlBatchHttpWrapper(graphqlServer));
router.all('/graphql', graphqlServer);
router.all(
'/graphiql',
koaPlayground({
endpoint: '/graphql',
subscriptionEndpoint: '/subscriptions',
}),
);
app.use(logger());
app.use(cors());
app.use(router.routes()).use(router.allowedMethods());
// },
formatError: error => {
console.log(error.message);
console.log(error.locations);
console.log(error.stack);
return {
message: error.message,
locations: error.locations,
stack: error.stack,
};
},
};
};
const graphqlServer = graphqlHttp(graphqlSettingsPerReq);
// graphql batch query route
router.all('/graphql/batch', bodyParser(), graphqlBatchHttpWrapper(graphqlServer));
router.all('/graphql', graphqlServer);
router.all(
'/playground',
koaPlayground({
endpoint: '/graphql',
}),
);
// router.all(
// '/graphiql',
// graphiqlKoa({
// endpointURL: '/graphql',
// subscriptionsEndpoint: `ws://localhost:${graphqlPort}/subscriptions`,
// }),
},
formatError: (error: GraphQLError): any => {
console.log(error.message);
console.log(error.locations);
console.log(error.stack);
return {
message: error.message,
locations: error.locations,
stack: error.stack
};
}
};
};
const graphqlServer = convert(graphqlHttp(graphqlSettingsPerReq));
app.prepare().then(() => {
const server = new Koa();
const router = new Router();
router.get('/', async ctx => {
await handle(ctx.req, ctx.res);
ctx.respond = false;
});
// router.get('/post/:slug', async ctx => {
// console.log('========== /post', ctx.params, ctx.query);
// // await handle(ctx.req, ctx.res, { query: { slug: ctx.params.slug } });
// await app.render(ctx.req, ctx.res, '/post', { slug: ctx.params.slug });
// ctx.respond = false;
// });
// },
formatError: error => {
console.log(error.message);
console.log(error.locations);
console.log(error.stack);
return {
message: error.message,
locations: error.locations,
stack: error.stack,
};
},
};
};
const graphqlServer = graphqlHttp(graphqlSettingsPerReq);
// graphql batch query route
router.all('/graphql/batch', bodyParser(), graphqlBatchHttpWrapper(graphqlServer));
router.all('/graphql', graphqlServer);
router.all(
'/graphiql',
graphiqlKoa({
endpointURL: '/graphql',
subscriptionsEndpoint: `ws://localhost:${graphqlPort}/subscriptions`,
}),
);
router.all(
'/playground',
koaPlayground({
endpoint: '/graphql',
}),
},
formatError: error => {
console.log(error.message);
console.log(error.locations);
console.log(error.stack);
return {
message: error.message,
locations: error.locations,
stack: error.stack,
};
},
};
};
const graphqlServer = convert(graphqlHttp(graphqlSettingsPerReq));
// graphql batch query route
router.all('/graphql/batch', bodyParser(), graphqlBatchHttpWrapper(graphqlServer));
// graphql standard route
router.all('/graphql', graphqlServer);
app.use(logger());
app.use(cors());
app.use(router.routes()).use(router.allowedMethods());
router.all(
'/playground',
koaPlayground({
endpoint: '/graphql',
}),
);
const router = new Router();
app.context.pubnub = pubNubSetup();
// app.use(morgan('tiny'))
app.use(dataloadersMiddleware)
app.use(authenticatedMiddleware)
router.get('/', ctx => ctx.body = 'Hello World')
router.all('/playground', koaPlayground({
endpoint: '/graphql',
subscriptionEndpoint: `ws://localhost:${SERVER_PORT}/subscriptions`,
}))
router.all('/graphql', graphqlHTTP({
schema,
graphiql: true
}))
app.use(cors());
app.use(router.routes()).use(router.allowedMethods());
export default app;
import schema from './graphql';
import publish from './publish';
const app = new Koa();
const PORT = Number.parseInt(process.env.PORT || '8080', 10);
const PUBLIC_PATH = path.resolve(__dirname, '../client');
const staticServer = serve(PUBLIC_PATH);
app.use(middleware.serverErrorHandler);
app.use(middleware.pageNotFound);
app.use(middleware.responseTime);
app.use(middleware.logger);
// koa graphql
app.use(mount('/graphql', convert(graphQLHTTP({ schema, pretty: true }))));
// Publish service
app.use(mount('/publish', publish));
if (process.env.NODE_ENV !== 'production') {
// koa static
app.use(staticServer);
const devMiddleware = require('./middleware/webpack-middleware').devMiddleware;
const hotMiddleware = require('./middleware/webpack-middleware').hotMiddleware;
app.use(devMiddleware);
app.use(hotMiddleware);
}
// server render
instrumentSchema,
newContext,
} from './instrument';
const app = new Koa();
app.keys = jwtSecret;
const router = new Router();
instrumentSchema(schema);
app.use(logger());
app.use(convert(cors()));
app.use(instrumentMiddleware());
router.all('/graphql', convert(graphqlHTTP(async (req) => {
console.log('/graphql: ', req._instrumentContext);
const { user } = await getUser(req.header.authorization);
return {
graphiql: process.env.NODE_ENV !== 'production',
schema,
context: {
user,
instrumentContext: newContext(req),
},
formatError: (error) => {
console.log(error.message);
console.log(error.locations);
console.log(error.stack);
return {
const options: Options = {
graphiql: process.env.NODE_ENV !== 'production',
schema,
context: {
req,
res,
dataloaders,
user,
pubSub
}
}
return options
}
const graphqlServer = graphqlHttp(graphqlSettingsPerReq)
router.all('/graphql', bodyParser(), graphqlServer)
if (process.env.NODE_ENV !== 'production') {
router.all(
'/graphiql',
koaPlayground({
endpoint: '/graphql',
subscriptionEndpoint: '/subscriptions'
})
)
}
app.use(logger())
app.use(cors())
app.use(router.routes()).use(router.allowedMethods())