91JS原生:node.js对URL的解析规则

用node.js搭建的服务器环境,其内置模块URL可以把浏览器传过来的URL进行解析,并根据解析结果做出相应的响应。1、引入node内置模块url,用url模块的parse方法来解析winUrl```javascriptvar url = require(‘url‘);var winUrl = url.parse(‘http://www.zhu.cn:80/ccc/index.html?name=zxt&age=26#33‘, true);console.log(winUrl);   winUrl{   protocol: ‘http:‘,   slashes: true,   auth: null,   host: ‘www.zhu.cn:80‘,   port: ‘80‘,   hostname: ‘www.zhu.cn‘,   hash: ‘#33‘,   search: ‘?name=zxt&age=26‘,   query: { name: ‘zxt‘, age: ‘26‘ },当第二行的true不存在时query: ‘name=zxt&age=26‘,   pathname: ‘/ccc/index.html‘,   path: ‘/ccc/index.html?name=zxt&age=26‘,   href: ‘http://www.zhu.cn:80/index.html?name=zxt&age=26#33‘ }```

4、封装解析方法(解析URL中的问号参数值以及HASH值) ```javascript:runfunction queryURLParameter(url) {    var obj = {};    var reg = /([^?=&#]+)=([^?=&#]+)/g;    url.replace(reg, function () {        obj[arguments[1]] = arguments[2];    });    reg = /#([^?=&#]+)/;    if (reg.test(url)) {        obj[‘HASH‘] = reg.exec(url)[1];    }    return obj;}var str1="https://www.baidu.com/newspage/data/landingsuper?AAA=1111&BBB=222&CCC=333#1234";var abc1=queryURLParameter(str1);console.log("第1次输出:",abc1);

function hashA(url){    var reg=/#([^#&=?]+)/;    if(reg.test(url)){        return reg.exec(url)[1];    }}var str2="https://www.baidu.com/newspage/data/landingsuper?AAA=1111&BBB=222&CCC=333#1234"var abc2=hashA(str2);console.log("第2次输出:"+abc2);

var ary=["零","一","二","三","四","五","六","七","八","九"];var str3="今年是2017年";var abc3=str3.replace(/\d/g,function () {    return ary[arguments[0]]});console.log("第3次输出:"+abc3);

/*正则匹配输出 我是[你的朋友]钱成*/var str4 = ‘我是<img src="haha.png" alt="你的朋友"/>钱成‘;var reg=/(.+)<(.+)t="(.+)"\/>(.+)/;var AAA=reg.exec(str4);var abc4=AAA[1]+"["+AAA[3]+"]"+AAA[4];console.log("第4次输出:"+abc4);```

原文地址:https://www.cnblogs.com/gushixianqiancheng/p/10967160.html

时间: 2024-11-08 21:15:41

91JS原生:node.js对URL的解析规则的相关文章

node.js获取url中的各个参数

实例代码test.js var http=require('http'); var url=require('url'); var querystring=require('querystring'); http.createServer(function(request, response) { var urlStr = request.url; var methodName = urlStr.substring(1, urlStr.indexOf('?')); console.log('me

node.js关于URL

Node.Js中用户URL 格式化和反格式化模块 用于URL解析.处理等操作的解决方案 1.url.parse(urlStr[, parseQueryString][, slashesDenoteHost],a,b) url.parse后面还有两个参数 默认为false 参数 a ,b  如果 a 为 true 则query为对象  如果 b 为true 则host 会被解析成正确的值 具体情况 根据项目来选择 将url字符串转换成object对象 2.url.format(urlObj)  将

# node中的url常用方法解析

url字符串是一个结构化的字符串,由好几个有意义部分组成.我们在工作中不可避免的会用到其中的某个部分,最原始的通过字符串截取和正则匹配的方法难免用起来会不太方便和美观,所以在我们的nodejs中提供了一个处理和解析url的模块url,该模块提供了一些实用的函数使我们解析起来更加的方便快捷,那接下里我们来分析一下它提供的常用的函数的用法 url模块提供了两套API来处理URLs: 一个是Node.js遗留的特有的API, 保留的原因:虽然Node.js遗留的特有的API并没有被弃用,但是保留的目的

Node.js 初识 URL 模块

URL 模块提供了一些解析 URL 的工具 var url = require('url'); URL 是一段 结构化的字符串,包含了多个有意义的部分.解析完成以后,会返回一个 URL对象(包含每个部分的属性). urlObject.href href 属性指的是 被解析后完整的 URL 字符串,包括 协议名.主机名等部分,并且被转换成小写字母 例如:'http://user:[email protected]:8080/p/a/t/h?query=string#hash' urlObject.

Node.js(三)——URL模块

URL模块: URL:统一资源定位符,偏重定位 URI:统一资源标识符,偏重标识 网站就是URL,是一个具体的符号说明了要通过哪一种协议来访问一个资源 URI更抽象,是一个字符串格式规范 是一种概念上的定义 事实上,URL是URI的子集 在该模块中有三个方法 url.parse(urlStr, [parseQueryString], [slashesDenoteHost]) 解析地址,解析成一个对象 url.format(urlObj) 将一个url对象格式化成url字符串 url.resolv

Node.js :URL、QueryString介绍

URL网址解析 url: 统一资源定位符,字母,数字,文字需编码uri: 统一资源标识符,字符串格式规范 注:url 是 uri 的子集 url.parse (urlString, bool,bool) 参数1:URL解析成对象:参数2:将qurey变成json对象:参数3:正确解析不带协议(http)的url url.format (urlobj): url.resolve (from,to) 将两段字符串合并成一个完整的url地址 参数1:超链接:参数2:路 参数解释 protocol:协议

node.js系列(实例):原生node.js实现静态资源管理

1 /** 2 * node入门之综合案例(一):简易路由 3 * @Author : by Ghost 4 * @Date : 2016/07/11 5 * @Description : 6 * 1.引入以下模块 7 * http模块:创建服务器,处理请求和相应 8 * URL模块:解析url请求地址 9 * fs模块:读取文件 10 * path模块:处理文件路径,获取文件后缀名,路径优化 11 * 12 * 2.使用http.createServer()方法创建服务器 13 * 3.使用u

Node.js中url的parse、format、resolve方法详解

官方API地址:https://nodejs.org/api/url.html url.parse():将url字符串转换为url对象 url.format():将url对象格式化为url 字符串 url.resolve():用于解析,接受两个参数,拼接 在node环境下直接输url,如下图 url.parse('http://imooc.com/course/list') url.parse('http://imooc.com:8080/course/list?from=scott&cours

原生node.js创建服务器

var http = require('http'); var fs = require('fs'); var path = require('path'); var server = http.createServer((req, res) => { console.log("req.url: ", req.url); if (req.url === '/') { readFileSend('./index.html') } else { readFileSend(req.ur