访问http://nodejs.cn/api/学习常用api
创建一个server文件夹,新建User.js,写入
module.exports = {
userName: 'jack',
sayHello: function () {
return 'hello'
}
}
同级目录下创建demo.js文件并写入
let user = require('./User')
console.log(user.userName)
就可以通过命令行 node demo.js运行此文件
module.exports相当于默认导出,也可以下列方式导出
exports.userName = 'Ben'
首先加载http模块,通过http创建一个服务器,服务器有一个回调函数,有请求和返回
设置返回的状态码为200,返回时在浏览器中显示hello node.js,通过http://localhost:3000/就可以访问我们的服务器了
let http = require('http')
let server = http.createServer((req, res) => {
res.stautsCode = 200
res.end('hello node.js')
})
server.listen(3000, '127.0.0.1', () => {
console.log('服务器以开始运行')
})
url.parse能将当前请求的url解析出来,util.inspect能将一个url对象转换成字符串
let http = require('http')
let url = require('url')
let util = require('util')
let server = http.createServer((req, res) => {
res.stautsCode = 200
let strUrl = util.inspect(url.parse(req.url))
res.end(strUrl)
})
server.listen(3000, '127.0.0.1', () => {
console.log('服务器以开始运行')
})
req.url是一个网址的字符串
而url.parse解析后变成了类似下列一个对象,但是这个对象不会显示出来,所以我们在调试时需要util.inspect将它转成字符串来便于调试
Url {
protocol: null,
slashes: null,
auth: null,
host: null,
port: null,
hostname: null,
hash: null,
search: null,
query: null,
pathname: '/',
path: '/',
href: '/' }
同级目录下新建index.html文件,server.js文件
通过fs读取文件
url.parse(req.url)被解析出来是一个对象,有一个pathname属性就是index.html文件名
let http = require('http')
let url = require('url')
let fs = require('fs')
let server = http.createServer((req, res) => {
let pathname = url.parse(req.url).pathname
fs.readFile(pathname.substring(1), (err, data) => {
if (err) {
res.writeHead(404, {
'Content-Type': 'text/html'
})
}
else {
res.writeHead(200, {
'Content-Type': 'text/html'
})
res.write(data.toString())
}
res.end()
})
})
server.listen(3000, '127.0.0.1', () => {
console.log('服务器已开始运行')
新建client.js文件
let http = require('http')
let util = require('util')
http.get('http://www.imooc.com/u/card', (res) => {
let data = ''
res.on('data', (chunk) => {
data += chunk
})
res.on('end', () => {
let result = JSON.parse(data)
console.log('result:' + util.inspect(result))
})
})
npm i -g express-generator
express --version 查看版本
exoress server // 创建项目
在server下安装依赖,并启动项目
npm i
node bin/www
不用jade改用html,删除views下的所有jade文件
安装ejs
npm i ejs --save
在app.js中加入
var ejs = require('ejs') // 需加入
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.engine('.html', ejs.__express) // 需加入
app.set('view engine', 'html'); // 需改!!!
然后执行 node bin/www 就能访问http://localhost:3000/了