node.js的http和url模块

一、http模块
// 通过require 引入http模块
const http = require("http");

// createServer 创建服务
// 回调函数  request 请求    response 响应
let server = http.createServer((req,res)=>{
    //  write  向客户端输入内容
    res.write("hello,zhangsan");
    // 告诉客户端响应结束
    res.end();
});

// listen监听端口
//  hello,zhangsan
server.listen(7766);

// req.url 获取用户的请求地址以及get请求传递的参数
const http = require("http");

let server = http.createServer((req,res)=>{
    res.write(req.url);
    res.end();
});

//  /
server.listen(7766);
二、url模块
// 通过url获取用户更多的信息
// parse()方法可以解析url信息

const http = require("http");
const url = require("url");

let server = http.createServer((req,res)=>{
   
    //  获取请求的url路径信息
    console.log(url.parse(req.url));
    res.write(req.url);
    res.end();
    
});

server.listen(6671);

//  /
//  url的路径信息
/* Url {
    protocol: null,
    slashes: null,
    auth: null,
    host: null,
    port: null,
    hostname: null,
    hash: null,
    search: null,
    query: null,
    pathname: '/',
    path: '/',
    href: '/' }
  Url {
    protocol: null,
    slashes: null,
    auth: null,
    host: null,
    port: null,
    hostname: null,
    hash: null,
    search: null,
    query: null,
    pathname: '/favicon.ico', */


// 对数据进行处理
const http = require("http");
const querystring = require("querystring");

let server = http.createServer((req,res)=>{
    
    // split方法将地址和参数以?为分界切割开,并且将结果解构赋值给url和query两个变量
    let [url,query] = req.url.split('?');
    // querystring方法直接解析query
    let get = querystring.parse(query);

    console.log(url,get);
    res.end();

});

// / {}
// /favicon.ico {} 
server.listen(6671);

//  客户端发生post请求,处理数据
const http = require("http");
const url = require("url");
const querystring = require("querystring");

let server = http.createServer((req,res)=>{

    let arr = [];
    req.on('data',buffer=>{
        // 将buffer数据存入到数组中
        arr.push(buffer);
    });
    req.on("end",()=>{
        //  缓冲区合并
        //  buffer数据是二进制数据
        let buffer = Buffer.concat(arr);
        let post = querystring.parse(buffer);
        // 将内容输出到网页中
        res.write(buffer);
        res.end();
    });
});
server.listen(6671);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值