一、使用node.js构建后台服务
1、使用node.js创建一个HTTP服务
const http = require('http')
const server = http.createServer((request, response) => {
response.end('Hello HTTP server')
})
server.listen(9000, () => {
console.log('服务启动成功...')
})
2、服务中提取HTTP请求报文
含义 |
语法 |
请求方法 |
request.method |
请求版本 |
request.httpVersion |
请求路径 |
request.url |
请求头 |
request.headers |
请求体 |
|
const http = require('http')
const server = http.createServer((request, response) => {
console.log(request.method)
console.log(request.url)
console.log(request.httpVersion)
console.log(request.headers)
response.end(request.method)
})
server.listen(9000, () =>{
console.log('服务启动成功..')
})
3、设置HTTP响应报文
response.statusCode = 200
response.statusMessage = '123'
response.setHeader('content-type','text/html;charset=utf-8')
response.end()
4、一个小练习,返回一个html文件
const http = require('http')
const fs = require('fs')
const server = http.createServer((request, response) => {
response.setHeader('content-type', 'text/html;charset=utf-8')
fs.readFile(__dirname + '/index.html', (err, data) => {
if (err) {
console.log('读取失败')
return
}
response.end(data)
})
})
server.listen(9000, () => {
console.log('服务器启动完毕...')
})
5、设置响应资源的MIME类型
常见的文件对应的mime类型
html:'text/html'
js:'text/javaScript'
css:'text/css'
png:'image/png'
jpg:'image/jpg'
gif:'image/gif'
mp4:'video/mp'
mp3:'audio/mpeg'
json:'application/json'
如果都不是,就返回application/octet-stream 类型
浏览器在遇到该类型的时候会对响应体内容进行独立存储,也就是我们常见的下载效果
6、绝对路径
路径 |
用法 |
http://www.baidu.com/aaa |
完整路径 |
//www.baidu.com/aaa |
省略协议 |
/aaa |
全部省略就会默认自动的使用当前项目的路径 |
7、相对路径
相对路径在发送请求时,需要与当前页面的URL路径进行计算,得到完整URL后再发送请求, 例如当前的路径是https://www.baidu.com/sourse/index.html
形式 |
最终的URL |
|
./css/app.css |
https://www.baidu.com/sourse/css/app.css |
当前目录 |
js/app.js |
https://www.baidu.com/sourse/js/app.js |
当前目录 |
…/img/logo.png |
https://www.baidu.com/img/logo.png |
上一级目录 |
…/…/mp4/show.mp4 |
https://www.baidu.com/mp4/show.mp4 |
上一级目录的上一级,但是现在只有一层,所以就是上一级目录。 |