美文网首页
NodeJs 中 http,url 模块使用

NodeJs 中 http,url 模块使用

作者: 老白涮肉坊_ | 来源:发表于2020-11-01 18:09 被阅读0次
    1、http 模块
    // 用于创建服务
    const http = require('http')
    
    http.createServer((req, res) => {
        console.log(req.url, req.method, req.query, req.params)
    
        // 设置响应头
        // 响应状态码 200,响应文件类型 html,字符集 utf-8
        res.writeHead(200, { 'Content-type': 'text/html;charset=utf-8' })
        res.write('<head><meta charset="utf-8"></head>')
        // 写入响应数据
        res.write('<h2>呐,这就叫专业</h2>')
        // 结束响应
        res.end()
    
    }).listen(3000) // 监听端口号
    
    2、url 模块
    // 用于解析url
    url.parse() 
    // url.parse() 逆向操作
    url.format(urlObject)
    // 用于添加或替换地址
    url.resolve(from, to)
    
    const url = require('url')
    
    const api = 'https://www.xxx.com?name=zhangsan&age=20'
    
    // url.parse() 解析url地址 第二个参数为 true,表示 query 部分直接得到一个对象
    // console.log(url.parse(api), url.parse(api, true))
    
    const { query } = url.parse(api, true)
    console.log(`姓名:${query.name} --- 年龄:${query.age}`)
    
    简单例子
    const http = require('http')
    const url = require('url')
    
    http.createServer((req, res) => {
        // 设置响应
        res.writeHead(200, {
            'content-type': 'text/html;charset=utf-8'
        })
    
        if (req.url !== '/favicon.ico') {
            // 解析 url
            const query = url.parse(req.url, true).query
            // 响应数据
            res.write(`姓名:${query.name ? query.name : '不存在'}`)
            // 结束响应
            res.end()
        }
    }).listen(3000)
    
    

    相关文章

      网友评论

          本文标题:NodeJs 中 http,url 模块使用

          本文链接:https://www.haomeiwen.com/subject/jlkuvktx.html