一个基于node 的小demo
首先我们新建一个文件夹 demo-test-node-1
目录目录如下
-- blog_recents.js
--template.html
--titles.jspn
首先我们新建一个 template.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title> demo-test-node-1 </title>
</head>
<body>
<h1>laters Posts</h1>
<ul>
<li>%</li>
</ul>
</body>
</html>
这个页面就完成了
接下来我们只做 blog_recents.js
var http = require('http');
var fs = require('fs');
var server = http.createServer(function(req,res){
if(req.url == '/'){
fs.readFile('./titles.json',function(err,data){
if(err){
console.log(err);
res.end('Server error');
}else{
var titles = JSON.parse(data.toString());
fs.readFile('./template.html',function(err,data){
if(err){
console.log(err);
res.end('Server error');
}else{
var temp = data.toString();
var html = temp.replace('%',titles.join('</li><li>'));
res.writeHead(200,{'Content-Type':'text/html'});
res.end(html);
}
});
// fs end
}
})
// fs end
}
// if end
})
server.listen(1234,'127.0.0.1',function(){
console.log('127.0.0.1:1234');
});
启动一个http 服务器 加载静态文件 template.html 和 titles.json 文件
接下来我们新建一个 titles.json文件
[
"以项目为驱动,在项目中快乐学习,解决软件开发学习枯燥",
"时间长,效果不明显,容易放弃等问题。"
]
只做完成后,cd 进入你当前的目录 node blog_recent.js 运行 是不是很简单呢
效果图如下

至此demo完成!
此项目demo地址 : https://github.com/guopz/demo-test-node-1
扩展
晋级项目 个人博客
demo地址 :https://github.com/guopz/nodejs-blog
有兴趣的同学可以clone一下
一个基于node 的小demo的更多相关文章
- 一个基于vue的仪表盘demo
最近写了一个基于vue的仪表盘,其中 主要是和 transform 相关的 css 用的比较多.给大家分享一下,喜欢的话点个赞呗?嘿嘿 截图如下: 实际效果查看地址:https://jhcan333. ...
- Swift基础之实现一个镂空图片的小Demo
前两天看了别人的文章,涉及到了镂空的展示,所以我在这里把实现的内容写成Swift语言的小Demo,供大家欣赏 首先,需要创建导航视图,然后创建两种展示方式的按钮 let vc = ViewContro ...
- 如何设计一个基于Node.js和Express的网站架构?
前言 今年七月份,我和几个小伙伴们合伙建立了一个开发团队.业务开展如火如荼的同时,团队宣传就提上了日程,所以迫切需要搭建公司网站出来.确定目标后我们就开始考虑如果构建一个企业网站.先是进行业内调查,看 ...
- gulp安装+一个超简单入门小demo
gulp安装參考.gulp安装參考2. 一.NPM npm是node.js的包管理工具.主要功能是管理.更新.搜索.公布node的包. Gulp是通过npm安装的. 所以首先,须要安装node.js. ...
- iOS:自己写的一个星级评价的小Demo
重新整理了下自己星级评价的Demo,可以展示星级评价,可以动态修改星级. github的地址:https://github.com/hunterCold/HYBStarEvaluationView a ...
- 如何创建一个基于Node的HTTP服务器
首先创建一个HTTP服务器. var http = require('http'); function serve(request,response) { console.log(request.me ...
- 一个JNI的helloworld小demo
最近想学习一下jni,在网上看了一些demo,自己也操作了一遍,首先我将我自己学习的demo网站贴出来:https://blog.csdn.net/lwcloud/article/details/78 ...
- 分享一个基于 Node.js 的 Web 开发框架 - Nokitjs
简介 Nokit 是一个简单易用的基于 Nodejs 的 Web 开发框架,默认提供了 MVC / NSP / RESTful 等支持,并提供对应项目模板.管理工具. 资源 GitHub https: ...
- 一个基于node express4.0和mongodb的活动报名
代码放在code.csdn.net上了,详细https://code.csdn.net/qazwsx2345/node_activity/tree/master git clone git@code. ...
随机推荐
- 从零开始HTML
1.属性 HTML 标签可以拥有属性.属性提供了有关 HTML 元素的更多的信息.属性总是以名称/值对的形式出现,比如:name="value". 属性总是在 HTML 元素的 ...
- [iOS] 响应式编程开发-ReactiveCocoa(一)
什么是响应式编程 响应式编程是一种面向数据流和变化传播的编程范式.这意味着可以在编程语言中很方便地表达静态或动态的数据流,而相关的计算模型会自动将变化的值通过数据流进行传播. 例如,在命令式编程环境中 ...
- iOS 的三种自建证书方法https请求相关配置
如果你的app服务端安装的是SLL颁发的CA,可以使用系统方法直接实现信任SSL证书,关于Apple对SSL证书的要求请参考:苹果官方文档CertKeyTrustProgGuide 这种方式不需要在B ...
- Android 中内容提供者的使用
在Android中内容提供者主要是用于不同程序之间的数据共享.内容提供器的用法一般有两种,一种是使用现有的内容提供器来读取和操作相应程序的数据,另一种是创建自己的内容提供器,供其他的程序访问. 使用现 ...
- STM32的USART DMA传输(转)
源:STM32的USART DMA传输 问题描述: 我有一个需求,AD采得一定数目的数据之后,由串口DMA发出,由于AD使用双缓冲,所以每次开始DMA的时候都需要重新设置开始的内存地址以及传输的数目( ...
- MySQL导入sql脚本中文乱码设置和常用命令
1. use database_name; 2. set names utf8; (或其他需要的编码) 3. source example.sql (sql文件存放路径) Mysql安装目录数据库目录 ...
- ajax修改密码
<div>用户名:<input type="text" id="uid" /><span id="tt" st ...
- 数据可视化-使用EXCEL和PS制作一个复杂饼图
一个朋友让我帮忙用饼图去展现一下一堆数据,我说行,后来他给我后,我看到是一堆貌似从什么仪器中导出的一堆使用分隔符分开的文本文档,使用excel打开后如下(为了保护隐私忽略了用字母和数字代替原来的内容: ...
- 315.Count of Smaller Numbers After Self My Submissions Question
You are given an integer array nums and you have to return a new counts array. Thecounts array has t ...
- 1.1.3.托管对象上下文(Core Data 应用程序实践指南)
管理托管对象的生命周期(lifecycle).还有其它功能:faulting.变更追踪(change tracking).验证(validation)等. faulting:只把用到的那一部分数据从持 ...