微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

node.js初步探究

node.js 探究之路

1、mac下安装node.js

(1)、升级系统到最新
(2)、升级xcode

xcode-select -p //检查是否安装xcode,如果出现路径,说明已安装

xcode-select -install //安装xcode

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"  //安装homebrew,官网:https://brew.sh/index_zh-cn.html

brew install node //使用HomeBrew安装nodejs

npm intall -g n //安装n模块到全局,从而控制node版本

2、node启一个web服务器

新建node_test目录,内部创建server.js文件,写入一下代码


终端执行:

$ cd node_test/imooc/beginning
$ node server.js

注意: 每次修改 response.end('Hello Worldn') 返回的内容时,都要在终端执行" ctrl+c "停止当前服务,再重新启动 "node server.js"。

3、node模块系统
在node.js中,文件和模块是一一对应的。
(1)、模块流程:


(2)、module.exports和export区别:

module.exports = add;  //特别的对象类型;(推荐使用,支持现有),module.exports最终返回给调用者;

exports.add = add;   //传统的模块实例;(exports是辅助方法),exports挂载属性方法,然后把属性赋给module.exports;

4、node API 之 url
(1)、url.parse()


URL地址组成:

protocol:指定底层使用协议,http或ftp等
slashes:是否有协议的双斜线
host:http的IP地址或域名
port:端口
hostname:主机名
hash:哈希值,锚点
search:查询字符串参数
query:发送给http的数据,参数串
pathname:访问资源路径名
path:路径
href:超链接

URI :Uniform Resource Identifier,统一资源标识符;
URL:Uniform Resource Locator,统一资源定位符;
URN:Uniform Resource Name,统一资源名称
其中,URL,URN是URI的子集。

(2)、url.parse(urlString,bool,bool): 将定位符解析成对象,识别无协议的url
第二个参数决定query部分以字符串返回还是以对象形式返回,认为字符串返回即第二个参数认为false;

以上图中设置为 true,看到的query是对象形式。

第三个参数表示在没有完整协议串的时候(即无http:,https:)的时候‘//’之后的字符如何解释,若为false即将‘//’之后的当做路径解释,若为true则会将‘//’与‘/’之间的字符串解释为主机

对比上图中加入第三个参数,发现pathname,paht,host,port,hostname都会不同。

(3)、url.resolve(): 将一个基本URL和指定超链接目标URL合并


(4)、url.format(): 将对象解析成定位符(也就是URL)

5、QueryString使用
(1)、querystring.stringify(obj,para1,para2)//将对象转化成url中query部分的形式(序列化)
参数:1.要转化的对象 2.参数之间的链接符(认&)3.键与值之间的符号(认=)

(2)、querystring.parse(string,para2)//将query字符串转化成对象(反序列化)
参数: 1.query字符串 2.链接符(认&),如果不是‘&’,需要在参数中说明使用的符号,如下面的‘,’。 3.键与值之间的符号(认=),如果使用的不是‘=’,需要在参数中说明使用的符号,如线面的‘:’。 4.参数的个数(认最多1000个,0就没有限制)

(3)、querystring.escape(string)//文字转译
(4)、uquerystring.unescape(string)//反转译

5、HTTP

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐