Node.js get/post请求和工具模块

15 篇文章 0 订阅

 

获取get请求

 

实例:

var http = require('http');
var url = require('url');
var util = require('util');

http.createServer(function (req,res) {
    res.writeHead(200,{'Content-Type':'text/plain;charset = utf-8'});
    res.end(util.inspect(url.parse(req.url,true)));
}).listen(6600);

 

解析:

创建一个本地服务器,调用回调函数,分别有两个参数req,res

Req:则为访问服务器时传递给服务器的信息

Res:为服务器对请求的返回

调用res.writeHead();来确定返回头信息

调用res.end()方法

util.inspect将

 

url.parse()解析请求的url的参数

urlString <string> 要解析的 URL 字符串。

parseQueryString <boolean> 如果为 true,则 query 属性总会通过 querystring 模块的 parse() 方法生成一个对象。 如果为 false,则返回的 URL 对象上的 query 属性会是一个未解析、未解码的字符串。 默认为 false

slashesDenoteHost <boolean> 如果为 true,则 // 之后至下一个 / 之前的字符串会被解析作为 host。 例如,//foo/bar 会被解析为 {host: 'foo', pathname: '/bar'} 而不是 {pathname: '//foo/bar'}。 默认为 false

 

url.parse() 方法会解析一个 URL 字符串并返回一个 URL 对象。

如果urlString不是字符串将会抛出TypeError

如果auth属性存在但无法编码则抛出URIError

 

 

response.end([data][, encoding][, callback])

data类型可以为缓冲区也可以为字符串

encoding:指定data的编码方式

callback:回调函数,无参数

 

如果指定了data,类似于

先调用response.write(data,encoding)在调用response.end()告诉服务器,回复已完成

 

 

运行结果:

 

 

Get请求

实例:

var http = require('http');
var querystring = require('querystring');
var util = require('util');

http.createServer(function (req,res) {
    var post = '';
    req.on('data',function (chunk) {
        post += chunk;
    });

    req.on('end',function () {
        post = querystring.parse(post);
        res.end(util.inspect(post));
    });
}).listen(6600);

当接受到post请求的时候,会触发data时间,调用回调函数,接受post请求的所有信息并将它赋值给post变量。

当请求信息接受完的时候,会触发end时间,通过querystring.parse来解析post为真正的post请求格式。

 

 

常用模块列表

序号

模块名 & 描述

1

OS 模块
提供基本的系统操作函数。

2

Path 模块
提供了处理和转换文件路径的工具。

3

Net 模块
用于底层的网络通信。提供了服务端和客户端的的操作。

4

DNS 模块
用于解析域名。

5

Domain 模块
简化异步代码的异常处理,可以捕捉处理try catch无法捕捉的。

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值