仅做笔记分享,如有错误请高手指出
1.什么是 Web 服务器?
Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,Web服务器的基本功能就是提供Web信息浏览服务。它只需支持HTTP协议、HTML文档格式及URL,与客户端的网络浏览器配合。
大多数 web 服务器都支持服务端的脚本语言(php、python、ruby)等,并通过脚本语言从数据库获取数据,将结果返回给客户端浏览器。
目前最主流的三个Web服务器是Apache、Nginx、IIS。
2. http
官方文档:
要使用 HTTP 服务器和客户端,必须 require(‘http’)。Node.js 中的 HTTP 接口旨在支持传统上难以使用的协议的许多功能。 特别是,大块的、可能块编码的消息。
接口永远不会缓冲整个请求或响应,用户能够流式传输数据。
const http=require('http');
创建一个简单的web服务器:
//使用http模块创建web服务器
const http=require('http');
//创建服务器
let server=http.createServer();
//分配(监听)端口
server.listen(3000,()=>console.log(123));
//访问服务器:http://127.0.0.1:3000
//接收浏览器的请求
//事件:当有浏览器发起请求
server.on('request',(req,res)=>{
console.log('收到一个浏览器的请求');
//查看请求的方法
console.log('请求的方法:'+req.method);
//查看请求的URL
console.log('请求的URL:'+req.url);
//查看请求的头信息
//console.log('请求的头信息:'+req.headers);
//重定向到百度的URL
res.writeHead(302,{
Location: 'http://www.baidu.com',
//防止乱码
'Content-Type': 'text/html; charset=utf-8'
});
//响应结束
res.end();
});
3.使用express创建web服务器
官方介绍:快速,节点,无偏见,极简主义的Web框架。
- 下载express包
npm install -g express-generator @ 4
- 创建web服务器
//使用express创建web服务器
var express = require('express')
var app = express()//创建
app.listen(3000,()=>console.log('服务器创建成功')
app.get('/', function (req, res) {//使用get方法,请求url
res.send('Hello World')//只能有一个send
})
//创建路由,请求方法get,URL为 /login
app.get('/login',function(req,res){
//console.log('这是login');
//请求的方法,请求的URL
console.log('请求的方法:'+req.method);
console.log('请求的URL:'+req.url);
//console.log('请求的头信息:'+JSON.stringify(req.headers));
console.log('请求中的查询字符串:'+JSON.stringify(req.query));
});
//JSON.stringify 将json对象转为字符串
//JSON.parse 将json字符串解析为对象
高手文章:
如何使用nodejs创建Web服务器:https://blog.youkuaiyun.com/suwu150/article/details/72859767