跳到主要内容
CNode

egg.js +PostgreSQL 撸的一个小程序后端项目

分享
Ppadipata发布于 8 年前最后回复 8 年前
2697620

背景

本人刚接触node不久,学习直接跳过了express(不知是否会根基不稳。。。), 上来就撸 koa2,后来接触到 egg.js ,有阿里的实践,中大型的项目应该也完全hold得住,文档算是比较健全,项目写下来也是比较顺畅,功能基本够用,该有的都有,后面可能要使用到 grpc 不知道 egg 是否有集成,有待实践。。。

项目介绍

这个项目是一个小程序后端项目,用于学习作用 项目地址

更新时间更新内容更新说明
2018-07-23添加egg-validate参数规则校验
2018-07-23添加egg-sequelize数据库操作
2018-07-23添加egg-cors解决浏览器跨域
2018-07-23添加jsonwebtoken生成 token
2018-07-23添加中间件 auth.js校验用户身份
2018-07-23添加crypto加密crypto.createHash('md5').update(pwd).digest('hex');
2018-07-23小程序授权封装微信授权校验

目前发现问题:

  • 为什么配置了 egg-cors 没起作用? // 前端还是报跨域
// config.default.js
config.cors = {
        origin: '*',
        allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH',
};

只能在Nginx上面加上跨域配置

add_header 'Content-Security-Policy' "upgrade-insecure-requests";
add_header 'Access-Control-Allow-Origin' "*";
add_header 'Access-Control-Allow-Headers' "Origin, X-Requested-With, Content-Type, Accept, Authorization, X-Access-Token";
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Methods' 'GET,POST,HEAD,OPTIONS, PUT, DELETE';

结语

国内前端优秀的 node.js 框架还有很多,但 egg.js 算是其中非常优秀的,至少文档让我整体看来很舒服。等多做几个大型的项目实践后再具体评论了。

还望大佬多多指点代码不足之处,多多改进 ~~~

查看回复

回复 (26)

P
padipata#258 年前
引用 littledu瞄了一眼代码,发现 egg validate 并没有用起来啊

@littledu 是的,因为要调试点东西就去掉了,后面再补上吧。 From Noder

L
littledu#238 年前

瞄了一眼代码,发现 egg-validate 并没有用起来啊

L
littledu#228 年前
引用 atian25@padipata 没啥问题吧,好像之前有看到有 egg jwt 插件。 路由那里,也可以考虑用 https://github.com/eggjs/egg router plus

@atian25 使用 egg-jwt 跟直接使用 jsonwebtoken 没什么区别,依然要自己写 sign 和 verify

H
HobaiRiku#218 年前
config.cors = {
    origin: () => '*',
  };
O
okoala#208 年前

@padipata egg 的基础覆盖面很广,该有的基本都有,grpc 也有。 https://github.com/eggjs/awesome-egg

F
fantasticsoul#188 年前

案例一个自己的小库 , npm install pg-cli ^_^

P
padipata#178 年前
A
atian25#168 年前

plus 不是支持 load app/router/**/*.js 么,你怎么还自己 require

A
atian25#148 年前
引用 padipata@atian25 大神,用户检验部分不知写得是否符合规范?(middleware/auto.js)😳

@padipata 没啥问题吧,好像之前有看到有 egg-jwt 插件。

路由那里,也可以考虑用 https://github.com/eggjs/egg-router-plus

P
padipata#138 年前
引用 atian25

@atian25 大神,用户检验部分不知写得是否符合规范?(middleware/auto.js)😳

H
Helovebai#118 年前

那个设置跨域的问题我是设置的白名单,在config/config.dev.js 里设置的security.domainWhiteList ,你可以试一下看可不可以。 还有感觉引了好多插件啊,看的一脸懵逼 😳

E
EryouHao#108 年前
引用 szy0syz眼花了,怎么看成GraphQL了 😂😂

@szy0syz 不瞒你说,我第一眼也是

A
atian25#98 年前

P
padipata#78 年前
引用 openkeyerkoa2学习中,学学再来看egg

@openkeyer egg学习起来挺平缓的

O
openkeyer#58 年前

koa2学习中,学学再来看egg

S
szy0syz#48 年前

眼花了,怎么看成GraphQL了 😂😂

Z
zuohuadong#38 年前

nest.js 有 Grpc 的集成 https://docs.nestjs.cn/5.0/microservices?id=grpc 如果你更喜欢 Typescript 的话

P
padipata#28 年前
引用 gogogosns收藏了 先下载看看 egg还是很不错的

@gogogosns 嗯嗯,刚接触不久,还不是很清楚自己的写法是否规范

G
gogogosns#18 年前

收藏了 先下载看看 egg还是很不错的

参与回复

登录后即可参与回复。登录