最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Node.js中的HTTP模塊與URL模塊

 更新時(shí)間:2022年07月06日 10:32:44   作者:社會(huì)主義接班人  
這篇文章介紹了Node.js中的HTTP模塊與URL模塊,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

幾乎每門(mén)編程語(yǔ)言都會(huì)包括網(wǎng)絡(luò)這塊,Node.js也不例外。今天主要是熟悉下Node.js中HTTP服務(wù)。其實(shí)HTTP模塊是相當(dāng)?shù)蛯哟蔚模惶峁┞酚?、cookie、緩存等,像Web開(kāi)發(fā)中不會(huì)直接使用,但還是要熟悉下,這樣也方便以后的學(xué)習(xí)。

統(tǒng)一資源標(biāo)識(shí)符URL

這個(gè)是非常常見(jiàn)的,在Node.js中有幾種處理。

http://user:pass@host.com:80/resource/path/?query=string#hash

協(xié)議://身份認(rèn)證@主機(jī)名.com:端口/路徑/搜索/查詢(xún)#散列

在URL模塊中可以URL定義的屬性和方法

exports.parse = urlParse;
exports.resolve = urlResolve;
exports.resolveObject = urlResolveObject;
exports.format = urlFormat;

exports.Url = Url;

function Url() {
  this.protocol = null;
  this.slashes = null;
  this.auth = null;
  this.host = null;
  this.port = null;
  this.hostname = null;
  this.hash = null;
  this.search = null;
  this.query = null;
  this.pathname = null;
  this.path = null;
  this.href = null;
}

上面代碼可以看到URL模塊定義了protocol、slashes等這些屬性,還有parse、resolve 等方法.

1、URL字符串轉(zhuǎn)URL對(duì)象 parse

/**
 * Created by Administrator on 2016/3/26.
 */
var url=require('url');
var urlStr='http://user:pass@host.com:80/rseource/path?query=string#hash';
//parse(urlStr,[parseQueryString],[slashesDenoteHost])
//parseQueryString 布爾值 true:URL查詢(xún)字符串部分解析為對(duì)象字面量默認(rèn)false
//slashesDenoteHost 布爾值 true:把格式為//host/path的URL解析為:{host:'host',pathname:'/path'},而不是{pathname:'//host/path'} 默認(rèn)false
var urlObj=url.parse(urlStr,true,false);
console.log(urlObj);

輸出結(jié)果:

"C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\bin\runnerw.exe" F:\nodejs\node.exe URL.js
Url {
  protocol: 'http:',
  slashes: true,
  auth: 'user:pass',
  host: 'host.com:80',
  port: '80',
  hostname: 'host.com',
  hash: '#hash',
  search: '?query=string',
  query: { query: 'string' },
  pathname: '/rseource/path',
  path: '/rseource/path?query=string',
  href: 'http://user:pass@host.com:80/rseource/path?query=string#hash' }

Process finished with exit code 0

2.URL重定向resolve

有時(shí)候請(qǐng)求的url和實(shí)際的物理地址并不一樣,這就要進(jìn)行虛擬地址和物理地址的轉(zhuǎn)換。

var url=require('url');
var originalUrl='http://user:pass@host.com:80/rseource/path?query=string#hash';
var newResource='/another/path?querynew';
console.log(url.resolve(originalUrl,newResource));

輸出結(jié)果:

"C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\bin\runnerw.exe" F:\nodejs\node.exe URL.js
http://user:pass@host.com:80/another/path?querynew

Process finished with exit code 0

3.處理查詢(xún)字符串和表單參數(shù)

在做web開(kāi)發(fā)中常常需要向服務(wù)端get 、post請(qǐng)求,請(qǐng)求的時(shí)候可能會(huì)帶一些參數(shù),需要對(duì)參數(shù)進(jìn)行處理.比如:查詢(xún)字符串轉(zhuǎn)js對(duì)象或js對(duì)象轉(zhuǎn)字符串。

這里要用到queryString模塊的parse()和stringify()函數(shù)。

var qString=require('querystring')
//QueryString.parse = QueryString.decode = function(qs, sep, eq, options)
//1.qs 字符串
//2.sep 使用的分隔符 默認(rèn)&
//3.ep 使用的運(yùn)算符 默認(rèn)=
//4.一個(gè)具有maxKey屬性的對(duì)象 能夠限制生成的對(duì)象可以包含的鍵的數(shù)量默認(rèn)1000,0則無(wú)限制
var  params=qString.parse("name=cuiyanwei&color=red&color=blue");
console.log(params);
//QueryString.stringify = QueryString.encode = function(obj, sep, eq, options)
console.log(qString.stringify(params,"&","="));

輸出結(jié)果:

"C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\bin\runnerw.exe" F:\nodejs\node.exe URL.js
{ name: 'cuiyanwei', color: [ 'red', 'blue' ] }
name=cuiyanwei&color=red&color=blue

Process finished with exit code 0

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 總結(jié)幾道關(guān)于Node.js的面試問(wèn)題

    總結(jié)幾道關(guān)于Node.js的面試問(wèn)題

    這篇文章主要總結(jié)了幾道關(guān)于Node.js的面試問(wèn)題,通過(guò)這些問(wèn)題就來(lái)判斷一個(gè)人的Node.js水平是不太嚴(yán)謹(jǐn)?shù)模撬茏屇銓?duì)面試者在Node.js上的經(jīng)驗(yàn)如何有個(gè)大概的了解。有需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-01-01
  • 如何利用node.js開(kāi)發(fā)一個(gè)生成逐幀動(dòng)畫(huà)的小工具

    如何利用node.js開(kāi)發(fā)一個(gè)生成逐幀動(dòng)畫(huà)的小工具

    這篇文章主要給大家介紹了關(guān)于如何利用node.js開(kāi)發(fā)一個(gè)生成逐幀動(dòng)畫(huà)小工具的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用node.js具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • node.js使用免費(fèi)的阿里云ip查詢(xún)獲取ip所在地【推薦】

    node.js使用免費(fèi)的阿里云ip查詢(xún)獲取ip所在地【推薦】

    這篇文章主要介紹了node.js使用免費(fèi)的阿里云ip查詢(xún)獲取ip所在地的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2018-09-09
  • 如何利用Node.js做簡(jiǎn)單的圖片爬取

    如何利用Node.js做簡(jiǎn)單的圖片爬取

    這篇文章主要介紹了如何利用Node.js做簡(jiǎn)單的圖片爬取,爬蟲(chóng)的主要目的是收集互聯(lián)網(wǎng)上公開(kāi)的一些特定數(shù)據(jù),本文介紹用于網(wǎng)絡(luò)抓取的node.js包,完成一個(gè)簡(jiǎn)單的爬蟲(chóng)案例來(lái)爬取網(wǎng)頁(yè)上圖片并下載到本地
    2022-06-06
  • nodejs關(guān)于中間件解析

    nodejs關(guān)于中間件解析

    這篇文章主要介紹了nodejs關(guān)于中間件解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Node.js數(shù)據(jù)流Stream之Duplex流和Transform流用法

    Node.js數(shù)據(jù)流Stream之Duplex流和Transform流用法

    這篇文章介紹了Node.js數(shù)據(jù)流Stream之Duplex流和Transform流的用法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • node實(shí)現(xiàn)簡(jiǎn)單的反向代理服務(wù)器

    node實(shí)現(xiàn)簡(jiǎn)單的反向代理服務(wù)器

    本篇文章主要介紹了node實(shí)現(xiàn)簡(jiǎn)單的反向代理,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07
  • Node.js中使用jQuery的做法

    Node.js中使用jQuery的做法

    在Node.js中使用jQuery的做法,需要先安裝jquery,npm install jquery ,安裝后的版本是 3.1.0,本文介紹的非常詳細(xì),具有參考借鑒價(jià)值,感興趣的朋友一起看下吧
    2016-08-08
  • Node.js中的child_process模塊詳解

    Node.js中的child_process模塊詳解

    這篇文章主要給大家介紹了關(guān)于Node.js中child_process模塊的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-06-06
  • Nodejs中調(diào)用系統(tǒng)命令、Shell腳本和Python腳本的方法和實(shí)例

    Nodejs中調(diào)用系統(tǒng)命令、Shell腳本和Python腳本的方法和實(shí)例

    這篇文章主要介紹了Nodejs中調(diào)用系統(tǒng)命令、Shell腳本和Python腳本的方法和實(shí)例,本文給出了利用子進(jìn)程調(diào)用系統(tǒng)命令、執(zhí)行系統(tǒng)命令、調(diào)用傳參數(shù)的shell腳本、調(diào)用python腳本的例子,需要的朋友可以參考下
    2015-01-01

最新評(píng)論

巴彦淖尔市| 台南县| 神农架林区| 沁源县| 淅川县| 巴塘县| 安多县| 比如县| 正阳县| 塘沽区| 平凉市| 临江市| 突泉县| 滕州市| 额尔古纳市| 崇礼县| 江安县| 都昌县| 图片| 攀枝花市| 崇义县| 叶城县| 治县。| 巴楚县| 武夷山市| 连云港市| 阿尔山市| 微博| 宜黄县| 西乡县| 南雄市| 莱阳市| 江川县| 全南县| 锦屏县| 霍城县| 锡林浩特市| 西林县| 图们市| 重庆市| 临海市|