http -请求(get和post)
程序员文章站
2022-04-15 17:42:12
...
GET
-
我们根据请求方式判断是否是GET方式的请求,并且根据前请求的url(即接口地址)判断是否是该接口,如果满足条件,则做出响应。
// 1.导入模块
const http = require(“http”);
const qs = require(“querystring”);// 2.创建server对象
const server = http.createServer();// 3.占用端口3000
server.listen(3000, function() {
console.log(“服务启动在3000端口”);
});// 4.设置请求事件
server.on(“request”, function(req, res) {
console.log(req.url);// 目标:先能获取到前端传递参数! // 获取到数据;存入数据库;MySQL let arr = req.url.split("?"); let str = arr[1]; // name=zs&age=18 // 上午:qs queryString; let obj = qs.parse(str); console.log(obj); // 没有设计接口:任何请求都返回下面: res.end("125deme") })
POST
-
如果客户端使用POST方式向服务器发送了一次请求,又该如何处理呢?
-
重点:POST请求一般会提交数据给服务器,所有接口要做的事情就是如何接收这些数据。
-
代码:
// 1.导入模块 const http = require("http"); const qs = require("querystring"); // 2.创建server对象 const server = http.createServer(); // 3.占用端口3000 server.listen(3000, function() { console.log("服务启动在3000端口"); }); // 4.设置请求事件 server.on("request", function(req, res) { // get请求参数:在url后面 分隔url地址,qs.parse // posr请求参数:请求体 req.on data/end 获取数据,qs.parse // 注册两个事件: // data : 正在接受数据的时候执行! let str = ""; req.on("data", function(chunk) { // abc:正在接受一段一段数据; str += chunk; }); // end :接受数据完成后执行; req.on("end", function() { //console.log(str); // 名=值&名=值 let obj = qs.parse(str); console.log(obj); }); // 没有设计接口:任何请求都返回下面: res.end("125deme") })