php网站编程,邮箱域名,wordpress语音,手机wap支付文章目录 前言一、创建http服务二、设置http的响应报文三、不同请求响应不同数据四、请求响应不同html文件1. 添加www文件夹2. js代码3. 效果 五、get和post请求的区别 前言
提示#xff1a;这里可以添加本文要记录的大概内容#xff1a; 一、创建http服务
// 1#xff1a… 文章目录 前言一、创建http服务二、设置http的响应报文三、不同请求响应不同数据四、请求响应不同html文件1. 添加www文件夹2. js代码3. 效果 五、get和post请求的区别 前言
提示这里可以添加本文要记录的大概内容 一、创建http服务
// 1导入http模块
const http require(http)// 2:创建服务器
// req request 请求对象 存储请求的报文信息(请求路径,方法,参数)
// res response 响应对象 负责响应客户端的数据
const serve http.createServer((req, res) {res.end(hello word)
})// 3监听端口启动服务
/**
* 参数说明
* param {type} port 端口号
* param {type} hostname非必填 主机号(ip地址) 不写默认是本机ip*ip 网线在网络中的唯一地址 ,(相当于是人的身份证)端口号 每一个电脑都有很多应用程序,而每个应用程序都有一个编号称之为端口号,识别是哪个应用程序发送的请求
* param {type} callback 回调函数
*/
serve.listen(9000, () {console.log(服务器已经启动了);
}) 二、设置http的响应报文
// 1导入http模块
const http require(http)const serve http.createServer((req, res) {// 1:设置响应体重点// 注意点:rep.end()只能响应字符串和二进制两种数据,否则程序会出错//1如果想返回对象类型,转成json字符串//2end方法一次只能响应一个res.end(JSON.stringify({name:张三,age:18}));// 2设置响应状态码res.statuseCode 209;// 3设置响应状态的描述res.statusMessage 描述// 4设置响应头res.setHeader(header)})serve.listen(9000, () {console.log(服务器已经启动了);
}) 三、不同请求响应不同数据 注意点解决乱码问题res.setHeader(‘Content-Type’,‘text/plain;charsetutf8’); // 1:导包
const http require(http);
// 2:创建服务器
const server http.createServer((req, res) {console.log(req.url);if (req.url /) {// 解决乱码问题res.setHeader(Content-Type,text/plain;charsetutf8);res.end(首页)} else if (req.url index) {res.setHeader(Content-Type,text/plain;charsetutf8);res.end(首页)} else if (req.url login) {res.setHeader(Content-Type,text/plain;charsetutf8);res.end(登录成功)}
})server.listen(9000, () {console.log(服务器开启成功);
})四、请求响应不同html文件
1. 添加www文件夹 文件夹中加上index.html、login.html、404.html文件 2. js代码 // 1:导包
const fs require(fs);
const http require(http);
const path require(path);
// 2:创建服务器
const server http.createServer((req, res) {console.log(req.url);if (req.url / || req.url /index) {// 拼接绝对路径fs.readFile(path.join(__dirname, www, index.html), (err,data) {if (err) {throw err;} else {// 解决乱码问题res.setHeader(Content-Type,text/plain;charsetutf8);res.end(data)}})} else if (req.url /login) {fs.readFile(path.join(__dirname, www, login.html), (err,data) {if (err) {throw err;} else {// 解决乱码问题res.setHeader(Content-Type,text/plain;charsetutf8);res.end(data)}})} else{fs.readFile(path.join(__dirname, www, 404.html), (err,data) {if (err) {throw err;} else {// 解决乱码问题res.setHeader(Content-Type,text/plain;charsetutf8);res.end(data)}})}
})server.listen(9000, () {console.log(服务器开启成功);
})3. 效果 五、get和post请求的区别 1作用get主要用来获取数据post用来提交数据。 2参数位置get参数在url后面post在请求体里面。 3安全性由于get参数在url上会暴露所以post更安全。 4请求限制get一般为2kpost没有限制。