部分NodeJs
一、cnmp的操作;
1、cnmp info jquery查询jquery的版本;
2、cnmp install jquery@1.11.1;安装;
3、cnmp list查询所有下载的内容;
4、cnmp list | grep jquery;只显示下载的juery;
二、在某个js文件中启用搭建服务器;
1、利用ES5创建服务器;
var http=require("http");
http.createServer(function(req,res){
res.writeHead(200,{"Content-Type":"text/html"});
res.end("你好,世界!");
}).listen(8888);
console.log("Server running at http://127.0.0.2:8888/");
2、利用ES6创建服务器;
const http=require("http");
const homename="127.0.0.1";
const port=3000;
const server=http.createServer(function(req,res){
res.statusCode=200;
res.setHeader("Content-Type":"text/plain");
res.end("你好!");
});
server.listen(port,hostname,()=>{
console.log("服务器创建成功!");
});
三、commonJS的用法
1、首先引入http模块;
var http=require("http");
2、再引入我们需要的模块;
var util=require("./util.js");//在同一个目录下的文件要用./的方式;
3、
http.createServer(function(req,res){
res.writeHead(200,{"Content-Type":"text/plain";utf-8});
util.say(res);//一定是引入的模块;
util.add(res);//一定是引入的模块;
res.end();//res开始,并且res结束;
}).listen(8000);
console.log("修改成功!");
例子!!!!
var http=require("http");
var util=require("./util.js");
http.createServer(function (req,res) {
res.writeHead(200,{"Content-Type":"text/plain;charset=utf-8"});
util.say(res);
util.add(res);
res.end();
}).listen(8000);
console.log("你好!");
var util={
say:function (res) {
res.write("nihao");
},
add:function (res) {
res.write(1+2+"");
}
}
module.exports=util;
a、定义接口;再定义的时候如果用到var util={};的时候记住是json的格式;
b、暴露接口;module.exports=util;
四、npm的使用
1、全局安装模块;npm install n -g
2、项目依赖,通过--save加进去
3、开发依赖,线上不需要---通过--dev加进去
4、查看版本标识:cnpm outdated
五、协议
https://www.baidu.com:8080/api.php?from=1000phone&course=nodejs#test
{
protocol: 'https:',
slashes: true,
auth: null,
host: 'www.baidu.com:8080',
port: '8080',
hostname: 'www.baidu.com',
hash: '#test',
search: '?from=1000phone&course=nodejs',
query: { from: '1000phone', course: 'nodejs' },
pathname: '/api.php',
path: '/api.php?from=1000phone&course=nodejs',
href: 'https://www.baidu.com:8080/api.php?from=1000phone&course=nodejs#test' }
六、事件监听
var EventEmitter=require("events");
在es6中定义一个对象的方法:class Player extends EventEmitter;
实例化一个player对象:var player=new Player();
监听的过程:两个
1、接收事件--->只能有一个接收事件;player.on("playing",(data)=>{
console.log(`正在播放:${data}`);
});
2、派发事件---->可以有多个区派发;player.emit("playing","相见恨晚");
playing("playing","情在");
七,文件管理
共有7个方法:
1、查看文件状态,()
var fs=require("fs");
fs.stat("所要查看的文件名称",(err,stats)=>{
if(err){
console.log(err)
}else{
console.log(`目录:${stat.isDirectory()}`);
console.log(`文件:${stat.isFile()}`);
}
})
2、创建目录:利用fs.mkdir;
3、写入文件,并写入内容;包括连个方面;
a:开始没有文件,创建文件并写入内容;fs.writeFile;
fs.writeFile("创建的文件路径及名称","写入文件得内容",()=>{})
b:开始有文件,只写入内容;
fs.appendFile("写入得文件路径及名称","写入文件得内容",()=>{})
4、读取文件:利用fs.readFile("文件的路径和名称","utf-8",()=>{});
如果不写第二个则会出现返回来的为buffer类型的数据;但是如有没有此文件则会出现报错;
5、读取文件夹;fs.readdir("文件名称",(=>{});
6、文件重命名;fs.rename("原来文件名称","更改后文件名称"()=>{});
7、删除文件(包括两个步骤)
a:删除文件里面的内容;
fs.readdirSync("所删除的文件夹").map((item)=>{
fs.unlink(`所删除的文件夹/${item}`,(err)=>{
if(err){
console.log(err)
}else{
console.log("成功!");
}
})
});
b:删除文件夹
fs.rmdir("所要删除的文件",(err,data)=>{
if(){}else{};
})
八、stream
1、--save项目以来
2、--save-dev项目开发以来;
3、.pipe上一层的输出作为下一层的输入;
4、.zlib压缩模块;
zlib.createGzip();
部分NodeJs的更多相关文章
- NodeJs之OS
OS Node.js提供了一些基本的底层操作系统的模块OS. API var os = require('os'); console.log('[arch] 操作系统CPU架构'+os.arch()) ...
- NodeJs之Path
Path模块 NodeJs提供的Path模块,使得我们可以对文件路径进行简单的操作. API var path = require('path'); var path_str = '\\Users\\ ...
- NodeJs之调试
关于调试 当我们只专注于前端的时候,我们习惯性F12,这会给我们带来安全与舒心的感觉. 但是当我们使用NodeJs来开发后台的时候,我想噩梦来了. 但是也别泰国担心,NodeJs的调试是很不方便!这是 ...
- NodeJs在Linux下使用的各种问题
环境:ubuntu16.04 ubuntu中安装NodeJs 通过apt-get命令安装后发现只能使用nodejs,而没有node命令 如果想避免这种情况请看下面连接的这种安装方式: 拓展见:Linu ...
- NodeJs之child_process
一.child_process child_process是NodeJs的重要模块.帮助我们创建多进程任务,更好的利用了计算机的多核性能. 当然也支持线程间的通信. 二.child_process的几 ...
- nodejs进阶(6)—连接MySQL数据库
1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...
- 图片访问实时处理的实现(nodejs和php)
我在访问时光网.网易云音乐等网站时,发现将它们页面中的一些图片URL修改一下就可以得到不同尺寸的图片,于是思考了其实现方案,我的思路是:URL Rewrite + 实时处理 + 缓存,对用户请求的UR ...
- nodejs进阶(4)—读取图片到页面
我们先实现从指定路径读取图片然后输出到页面的功能. 先准备一张图片imgs/dog.jpg. file.js里面继续添加readImg方法,在这里注意读写的时候都需要声明'binary'.(file. ...
- nodejs进阶(3)—路由处理
1. url.parse(url)解析 该方法将一个URL字符串转换成对象并返回. url.parse(urlStr, [parseQueryString], [slashesDenoteHost]) ...
- 【原】nodejs全局安装和本地安装的区别
来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...
随机推荐
- 2017-2018-1 20155339 第十一周加分项Linux下Mypwd的实现
2017-2018-1 20155339 第十一周加分项Linux下Mypwd的实现 学习pwd命令 通过man命令查看pwd命令的功能 由图可知pwd命令的用途是显示工作目录的路径名称.pwd 命令 ...
- 20145209 2016-2017-2 《Java程序设计》课堂实践内容
20145209 2016-2017-2 <Java程序设计>课堂实践内容 一.递归 题目详情: public class TestArgs{ public static void mai ...
- 20145226夏艺华 《Java程序设计》第2周学习总结
教材学习内容总结 学习目标 了解Java编程风格 认识Java的类型与变量 掌握Java流程控制的方法(分支.循环) 教材第三章内容总结 认识类型与变量 学习运算符的基本使用 了解类型转换细节 运用基 ...
- sqlserver安装遇到的问题——1
SQL Server安装过无数次,今天第一次遇到这样的问题 一.问题消息复制出来是这样的 TITLE: Microsoft SQL Server 2008 R2 安装程序--------------- ...
- [CF888E] Maximum Subsequence 序列分治
早期作品,不喜轻喷. LG传送门 序列分治板子题. 切这道题用了好长时间,所以想发篇题解作为纪念 . 首先,我们认真观察题目数据(面向数据做题是个好习惯),发现题目的\(n\)竟然只有\(35\),我 ...
- Arduino 101/Genuino101使用-第2篇
1. Arduino 101编程只是在ARC的核心上进行,其具体架构为ARCv2EM.. 2. 而Quark核心,从目前可知的信息来看,其应该运行着名为Zephyr的RTOS 3.101并没有EEPR ...
- div不设置高度背景颜色或外边框不能显示的解决方法
在使用div+css进行网页布局时,如果外部div有背景颜色或者边框,而不设置其高度,在浏览时出现最外层Div的背景颜色和边框不起作用的问题. 大体结构<div class="oute ...
- Linux内核学习笔记(3)-- 进程的创建和终结
一. 进程创建: Unix 下的进程创建很特别,与许多其他操作系统不同,它分两步操作来创建和执行进程: fork() 和 exec() .首先,fork() 通过拷贝当前进程创建一个子进程:然后,ex ...
- Elasticsearch 统计代码例子
aggs avg 平均数 最近15分钟的平均访问时间,upstream_time_ms是每次访问时间,单位毫秒 { "query": { "filtered": ...
- Golang项目开发管理
工具 1. task(项目管理,类似于make) go get -u -v github.com/go-task/task/cmd/task 2. gopm(go依赖管理) go get -u git ...