掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流
穩(wěn)定性: 3 - 穩(wěn)定node.js的URL模塊提供了用于分析和解析URL的實用程序??梢哉{用require('url')來訪問它:

成都創(chuàng)新互聯(lián)主要從事網(wǎng)站建設、網(wǎng)站制作、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務眉縣,十多年網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:13518219792
const url = require('url');解析URL對象有以下內容,依賴于他們是否在URL字符串里存在。任何不在URL字符串里的部分,都不會出現(xiàn)在解析對象里。例子如下:
'http://user:[email protected]:8080/p/a/t/h?query=string#hash'
href:準備解析的完整的URL,包含協(xié)議和主機(小寫)。
例子:'http://user:[email protected]:8080/p/a/t/h?query=string#hash'
protocol: 請求協(xié)議,小寫。
例子:'http:'
slashes: 協(xié)議要求的斜杠(冒號后)
例子:true或false
host: 完整的URL小寫主機部分,包含端口信息。
例子:'host.com:8080'
auth: url中的驗證信息。
例子:'user:pass'
hostname: 域名中的小寫主機名
例子:'host.com'
port: 主機的端口號
例子:'8080'
pathname: URL中的路徑部分,在主機名后,查詢字符前,包含第一個斜杠。
例子:'/p/a/t/h'
search: URL中得查詢字符串,包含開頭的問號
例子:'?query=string'
path: pathname和search連在一起
例子:'/p/a/t/h?query=string'
query: 查詢字符串中得參數(shù)部分,或者使用querystring.parse()解析后返回的對象。
例子:'query=string'或者{'query':'string'}
hash: URL的“#”后面部分(包括 # 符號)
例子:'#hash'
URL模塊提供了以下方法:
輸入URL字符串,返回一個對象。
第二個參數(shù)為true時,使用querystring來解析查詢字符串。如果為true,query屬性將會一直賦值為對象,并且search屬性將會一直是字符串(可能為空)。默認為false。
第三個參數(shù)為true,把//foo/bar當做{ host: 'foo', pathname: '/bar' } ,而不是{ pathname: '//foo/bar' }。默認為false。
輸入一個解析過的URL對象,返回格式化過的字符串。
格式化的工作流程:
href會被忽略protocol無論是否有末尾的 : (冒號),會同樣的處理
http,https,ftp,gopher,file協(xié)議會被添加后綴:// mailto,xmpp,aim,sftp,foo等協(xié)議添加后綴:slashes如果協(xié)議需要://,設置為true。
mongodb://localhost:8000/auth如果出現(xiàn)將會使用.hostname僅在缺少host時使用port僅在缺少host時使用host用來替換hostname和portpathname無論結尾是否有“/”將會同樣處理search將會替 query屬性
query (對象;參見querystring) 如果沒有search,將會使用hash無論前面是否有#,都會同樣處理給一個基礎URL,href URL,如同瀏覽器一樣的解析它們可以帶上錨點,例如:
url.resolve('/one/two/three', 'four') // '/one/two/four'
url.resolve('http://example.com/', '/one') // 'http://example.com/one'
url.resolve('http://example.com/one', '/two') // 'http://example.com/two' 
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流