加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
index.js 1.31 KB
一键复制 编辑 原始数据 按行查看 历史
肖和槟 提交于 2020-06-05 14:25 . 添加graphql
const Koa = require('koa');
const app = new Koa();
const router = require('./router/index')
const bodyParser = require('koa-bodyparser')
const koajwt = require('koa-jwt');
// var Router = require('koa-router');
// const router = new Router;
// router.get('/login',(ctx,next)=>{
// ctx.body="you get the login"
// });
// router.post('/login',(ctx,next)=>{
// ctx.body="you post the login"
// })
// app.use(router.routes())
// .use(router.allowedMethods());
const {ApolloServer, gql} = require('apollo-server-koa'); // graphql-koa插件
const schema = require('./graphql/index.js'); //自定义的GraphQL的表
const server = new ApolloServer({ //创建Graphql server
schema,
context: ({ ctx }) => {
// let token = ctx.
}
});
server.applyMiddleware({app}); //apollo server使用koa中间件
//配置中间健 读取post数据 对象格式
app.use(bodyParser())
//jwt
app.use((ctx, next) => {
return next().catch((err) => {
if(err.status === 401){
ctx.status = 401;
ctx.body = {code: 401, msg: '未授权访问!'};
}else{
throw err;
}
})
})
app.use(koajwt({
secret: 'my_secret'
}).unless({
path: [/\/api\/login/,/\/api\/register/]
}));
router(app);
app.listen(3002,function() {
console.log('service is running in 3002')
});
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化