国内首个发布 Nodejs koajs 博客框架发布 version 0.4.4
国内首个发布 Nodejs koajs 博客框架发布 version 0.4.4
执行方式: node -harmony app github https://github.com/ckken/koa-project 演示地址: http://koa.wvovo.com/
文件以及作用:
static.js 解决windows开发中遇到的问题以及解决方案 yield.js 测试 异步流 run.md 运行命令
实现功能
管理员设置栏目功能 文章发布功能 评论功能 信息提示页面 多用户注册登录 权限控制模型 404页面 建立模块主入口 bootstrap 缓存静态文件 安全性模块(XSS + cookies验证)
官网依赖模块包括:
“koa”: “”,koa核心模块 “koa-route”: “”,路由模块 “koa-static”: “”,静态文件加载 “koa-static-cache”: “”,静态文件缓存加载 “co”:"",异步流 “co-fs”: “”, 文件流 “co-body”: “”,post JSON模块 “co-views”: “”,视图模块 “koa-compose”:"",函数合并执行 “swig”: “”,模版引擎 “xss”:"", 方式xss 攻击 “mongoose”:""mongo链接库
国内首个发布 Nodejs koajs 博客框架发布 version 0.4.4
执行方式:
使用 Node.js 的 Harmony 特性运行应用:
node -harmony app
GitHub 仓库:
您可以访问 GitHub 仓库 获取最新版本的源代码。
演示地址:
您可以在 演示地址 查看框架的实际效果。
文件及作用:
- static.js: 解决 Windows 开发中遇到的问题及解决方案。
- yield.js: 测试异步流功能。
- run.md: 包含运行命令的说明文档。
实现功能:
- 管理员设置栏目功能: 管理员可以轻松添加、删除或编辑博客分类。
- 文章发布功能: 用户可以通过简单的表单提交发布新文章。
- 评论功能: 用户可以在每篇文章下发表评论。
- 多用户注册登录: 提供用户注册和登录功能,并支持不同用户的权限管理。
- 权限控制模型: 不同角色的用户有不同的访问权限。
- 404 页面: 自定义的 404 错误页面提升用户体验。
- 建立模块主入口: 模块化的架构设计使得代码更加清晰和易于维护。
- Bootstrap: 使用 Bootstrap 进行前端样式设计,确保响应式布局。
- 缓存静态文件: 静态文件如 CSS 和 JS 文件被缓存以提高性能。
- 安全性模块 (XSS + Cookies 验证): 防止跨站脚本攻击 (XSS) 并通过 Cookies 进行身份验证。
官网依赖模块:
- koa: Koa 框架的核心模块。
- koa-route: 用于处理路由的模块。
- koa-static: 用于加载静态文件的模块。
- koa-static-cache: 用于缓存静态文件的模块。
- co: 用于异步流操作的模块。
- co-fs: 用于文件流操作的模块。
- co-body: 用于解析 POST 请求中的 JSON 数据的模块。
- co-views: 用于视图渲染的模块。
- koa-compose: 用于组合中间件的模块。
- swig: 用于模板引擎的模块。
- xss: 用于防止 XSS 攻击的模块。
- mongoose: 用于 MongoDB 连接的模块。
示例代码:
// app.js
const Koa = require('koa');
const Router = require('koa-router');
const serve = require('koa-static');
const app = new Koa();
const router = new Router();
// 静态资源服务
app.use(serve(__dirname + '/public'));
// 路由配置
router.get('/', async ctx => {
ctx.body = '欢迎来到我的博客!';
});
app.use(router.routes()).use(router.allowedMethods());
app.listen(3000, () => {
console.log('服务器已启动,监听端口 3000');
});
这段代码展示了如何使用 Koa 框架搭建一个简单的博客应用。通过 koa-static
模块提供静态资源服务,通过路由配置处理首页请求,并监听端口启动服务器。
看起来不错,支持w。
虽然名字维酷
不好听…
我的删除线是被吃了么= =
你这个博客有模版吗?还有你这个博客下载下来了不会用啊 ,还有你用的是Mongodb我想用mysql
运行到这句就不动了,为啥 var count = yield D(‘member’).count({username: m.username}).exec();
建议增加 路由配置层,参考sailsjs
mark
国内首个发布 Node.js Koa.js 博客框架发布 Version 0.4.4
执行方式:
node -harmony app.js
GitHub 仓库:
https://github.com/ckken/koa-project
演示地址:
文件及作用:
-
static.js
: 解决 Windows 开发中遇到的问题以及解决方案。// 示例代码 const Koa = require('koa'); const path = require('path'); const app = new Koa(); app.use(require('koa-static')(path.join(__dirname, 'public'))); app.listen(3000);
-
yield.js
: 测试异步流。// 示例代码 const co = require('co'); function* gen() { console.log('start'); yield setTimeout(() => console.log('timeout'), 1000); console.log('end'); } co(gen);
-
run.md
: 运行命令。# 示例命令 node app.js
实现功能:
- 管理员设置栏目功能
- 文章发布功能
- 评论功能
- 多用户注册登录
- 权限控制模型
- 404 页面
- 建立模块主入口
- Bootstrap 集成
- 缓存静态文件
- 安全性模块(XSS + cookies 验证)
官网依赖模块包括:
-
koa:
"koa": "^2.13.1"
Koa 核心模块。
-
koa-route:
"koa-route": "^3.2.0"
路由模块。
-
koa-static:
"koa-static": "^5.0.0"
静态文件加载模块。
-
koa-static-cache:
"koa-static-cache": "^5.1.0"
静态文件缓存加载模块。
-
co:
"co": "^4.6.0"
异步流模块。
-
co-fs:
"co-fs": "^1.2.4"
文件流模块。
-
co-body:
"co-body": "^5.2.0"
POST JSON 模块。
-
co-views:
"co-views": "^1.0.0"
视图模块。
-
koa-compose:
"koa-compose": "^4.1.0"
函数合并执行模块。
-
swig:
"swig": "^1.4.2"
模板引擎模块。
-
xss:
"xss": "^0.2.1"
防止 XSS 攻击模块。
-
mongoose:
"mongoose": "^5.13.1"
MongoDB 链接库。
这些模块和功能使得该博客框架具备了丰富的特性和强大的功能。通过上述代码示例,你可以快速理解并使用这些功能。