Javascript Node.js-提取URL的一部分

Javascript Node.js-提取URL的一部分,javascript,node.js,Javascript,Node.js,在node.js服务器中,我有一个URL变量 它的形式可以是,也可以是URL.com/usful_PART/blabla 从中,我只想提取“有用的部分”信息 如何使用Javascript实现这一点 我知道有两种方法可以做到这一点,一种是香草js,另一种是正则表达式。 我在网上搜索了一下,但我只找到了一些具体问题的答案。不幸的是,我找不到一个可以复制或解决问题的通用教程。一种方法是检查url是否以http或https开头,如果不是,则手动添加http,使用url api解析url,从解析的url中

在node.js服务器中,我有一个URL变量

它的形式可以是,也可以是URL.com/usful_PART/blabla

从中,我只想提取“有用的部分”信息

如何使用Javascript实现这一点

我知道有两种方法可以做到这一点,一种是香草js,另一种是正则表达式。
我在网上搜索了一下,但我只找到了一些具体问题的答案。不幸的是,我找不到一个可以复制或解决问题的通用教程。

一种方法是检查url是否以http或https开头,如果不是,则手动添加http,使用url api解析url,从解析的url中获取patname,并获得所需的部分

让urlExtractor=url=>{ 如果!/^https?:\/\//i.testurl{ url=http://+url } 让parsed=新URL 返回已解析的.pathname.split'/'[1] } console.logurlExtractorhttps://www.URL.com/USEFUL_PART/blabla
console.logurlExtractorURL.com/usful_PART/blabla一种方法是检查url是否以http或https开头,如果不是,则手动添加http,使用url api解析url,从解析的url中获取patname,并获取所需的部分

让urlExtractor=url=>{ 如果!/^https?:\/\//i.testurl{ url=http://+url } 让parsed=新URL 返回已解析的.pathname.split'/'[1] } console.logurlExtractorhttps://www.URL.com/USEFUL_PART/blabla console.logurlExtractorURL.com/usful_PART/blabla在Node.js中,您可以使用URL

在Node.js中,您可以使用URL


由于您使用的是Express,因此可以将URL的一部分指定为参数,如下所示:

app.get('/:id/blabla', (req, res, next) => {
  console.log(req.params); // Will be { id: 'some ID from the URL']
});

另请参见:

因为您使用的是Express,所以可以指定URL的一部分作为参数,如下所示:

app.get('/:id/blabla', (req, res, next) => {
  console.log(req.params); // Will be { id: 'some ID from the URL']
});

另请参见:

嘿,如果您使用的是express,那么您可以执行以下操作

app.get('/users/:id/blabla',function(req, res, next){
   console.log(req.params.id);
 }
另一种方法是使用javascript替换和拆分函数

str = str.replace("https://www.URL.com/", "");
str = str.split('/')[0];

嘿,如果你正在使用express,那么你可以这样做

app.get('/users/:id/blabla',function(req, res, next){
   console.log(req.params.id);
 }
另一种方法是使用javascript替换和拆分函数

str = str.replace("https://www.URL.com/", "");
str = str.split('/')[0];

这在http框架路由中非常常见,您可以签出express或hapi以查看它们如何处理此问题:我使用的是ExpressDid u trued req.params?这在http框架路由中非常常见,您可以签出express或hapi以查看它们如何处理此问题:我使用的是ExpressDid u trued req.params?如果它不包含“http”或“https”,则会添加“http”OK。但如果它包含“http”呢?此代码是否会在其前面放置一个“https”?@user1584421否只有在开始时缺少http或https时才会添加。如果它不包含“http”或“https”,则会添加“http”OK。但如果它包含“http”呢?这段代码会在它前面加上一个“https”吗?@user1584421否它只会在开始时缺少http或https时添加