标签归档:node.js

Node.js Path模块简介说明


摘要:
下文讲述Node.js Path模块的相关简介说明,如下所示:
实验环境:windows Node.js



Node.js Path功能说明

Node.js Path模块为Node.js提供一些处理文件路径的方法,
可用用于”返回绝对路径”,”连接多个路径”,”返回路径中的文件夹”,”路径中的字符串对象”

编号

方法名称

备注说明
1

path.normalize(p)

路径规范化,剔除”.”和”..”
2

path.join([path1][, path2][, …])

连接多个路径,连接路径之间(windows使用 “\”),(linux下使用”/”)
3

path.resolve([from …], to)

将to 参数解析为绝对路径。
4

path.isAbsolute(path)

检测一个路径是否为绝对路径,返回bool值
5

path.relative(from, to)

将相对路径转为绝对路径
6

path.dirname(p)

返回路径中文件夹的信息,类似于linux下的dirname命令
7

path.basename(p[, ext])

返回路径中的最后部分,类似linux命令下的bashname
8

path.extname(p)

返回路径中的文件后缀名
返回路径中最后一个点(.)后面的信息
9

path.parse(pathString)

返回路径信息中的字符串信息
10

path.format(pathObject)

从一个对象中返回路径字符串信息
11

path.sep

属性:
返回平台中的文件路径分隔符,如:\\ /
12

path.delimiter

属性:
返回平台分隔符 , ; :
13

path.posix

返回path模块中的方法
14

path.win32

返回path模块中的方法与win32的兼容性的函数和属性


Node.js Path举例应用

使用Path模块,需先引入此模块

 var path = require("path");
   var path = require("path");

// 格式化路径
console.log('normalization : ' + path.normalize('/maomao/node1//node.js/2node/test/..'));

// 连接路径
console.log('path join: ' + path.join('/maomao', 'node1', 'node2/node3', 'node4', '..'));

// 转换为绝对路径
console.log('resolve : ' + path.resolve('path.js'));

// 路径中文件的后缀名
console.log('ext name : ' + path.extname('path.txt')); 

node_node_path模块

node_node_path模块

Node.js 接收 GET/POST请求方法分享


摘要:
下文讲述Node.js创建web服务器接收 get post请求的相关知识分享,如下所示:

目前网络中大量应用是采用http、https协议和用户之间互动,下文讲述使用node.js创建web服务器接收客户端get post请求,如下所示:



node.js 创建get接收服务器

在http get的请求中,参数键值被签入到 http url的连接中,当我们获取url后,我们可以通过分析url中的信息获取参数值

例1:
创建简单web服务器获取url信息

      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(9898);

  

例2:
创建web服务器,分解url信息,下文中采用url模块中的parse函数对url进行分解得出所需的参数信息

   
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'});


      var params = url.parse(req.url, true).query;


    res.write("webName:" + params.name);
    res.write("\n");
    res.write("url" + params.keySort); //获取?参数中的keySort后的值
    res.end();


    res.end(util.inspect(url.parse(req.url, true)));
}).listen(9898);


在浏览器中输入:
http://localhost:9898/?t=23&name=www.maomao365.com&keySort=valueTest
——输出————
webName:www.maomao365.com
urlvalueTest



node.js 创建post接收服务器

例1:
使用node.js创建一个httppost接收程序,如下所示:

     
     var http = require('http');
     var querystring = require('querystring');
 
     http.createServer(function(req, res){ 
        var post = '';     
 
              //通过req的data事件监听函数,每当接受到请求体的数据,就累加到post变量中
             req.on('data', function(chunk){    
                  post += chunk;
               });
 
           // 在end事件触发后,通过querystring.parse将post解析为真正的POST请求格式,然后向客户端返回。
             req.on('end', function(){    
                post = querystring.parse(post);
               res.end(util.inspect(post));
         });
}).listen(9898);
 

例2:
post应用

         var http = require('http');
var querystring = require('querystring');
 
var postHTML = 
  '<html>maomao365之node.js post应用' +
  '' +
  '
' + '网站名:
' + '网站 URL:
' + '' + '
' + ''; http.createServer(function (req, res) { var body = ""; req.on('data', function (chunk) { body += chunk; }); req.on('end', function () { // 解析参数 body = querystring.parse(body); // 设置响应头部信息及编码 res.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'}); if(body.name && body.url) { // 输出提交的数据 res.write("网站名:" + body.name); res.write("
"); res.write("网站 URL:" + body.url); } else { // 输出表单 res.write(postHTML); } res.end(); }); }).listen(9898);

Node.js 文件系统 目录操作相关知识简介说明(二)


摘要:
Node.js通过fs模块提供类似于linux的文件操作API,
下文举例讲述node.js操作目录的API
如下所示:



node.js创建目录

node.js创建目录如下:

fs.mkdir(path[, options], callback)
—–参数说明———-
path:目录所处的路径位置

options:可选参数
recursive:是否已递归的方式依次创建目录缺失的路径,缺省值为false
mode:目录权限,缺省值为0777

callback:目录创建成功后的回调函数

例:
Node.js创建目录

          var fs = require("fs");
	  //在当前目录下创建test文件夹
	   console.log("create dir test");
	  fs.mkdir("test",function(err){
	  if (err) {
	    return console.error(err);
	   }
	   console.log("dir create success!");
          });
      


node.js读取目录

node.js读取目录语法如下:

fs.readdir(path, callback)
—-参数说明—–
path:待读取路径说明

callback:目录读取完毕后的回调函数
回调函数会同时传入两个函数:
1.err
错误信息
2.files
指定path下的文件数组列表

例:
node.js读取目录

	     var fs = require("fs");

	      console.log("see test dir");
           
	    fs.readdir("test/",function(err, files){
              if (err) {
                 return console.error(err);
                }
           files.forEach( function (file){
               console.log( file );
             });
           });

	  


node.js 删除目录

node.js 删除目录语法如下:
fs.rmdir(path, callback)
———参数说明——–
path:
待删除目录的路径

callback:
删除目录操作完毕后,回调函数

例:

    var fs = require("fs");

    console.log("del 'test' dir");

    fs.rmdir("test",function(err){
       if (err) {
         return console.error(err);
      }
   
     });
  


删除目录注意事项:
避免目录中存在文件

相关阅读:
node.js文件操作相关API