如何让浏览器忽略URL中间的特定字符串?

问题描述 投票:0回答:1

我有一个非常狭窄的特定情况,其中应用程序采用URL,并从传递给它的变量中将特定服务器的名称附加到该服务器的末尾,但它以host:servername001的形式执行。问题是如果host:存在,则URL无法正常工作。我是否可以在变量之前添加一个字符串,以告诉它忽略接下来的5个字符(例如host:),然后使用结果URL?

它将传递的URL是:

https://website1/path/server.do?sysparm_query=name=$host.name

这将导致实际的URL输出为:

https://website1/path/server.do?sysparm_query=name=host:servername001

我正在寻找一种方法,使它可以忽略服务器名称前的5个字符(主机:)。我可以控制URL字符串,但不能控制$ host.name变量。

想法或建议?

澄清说明:

我正在将URL和变量传递到输出。这一切都是在第三方应用程序中进行的,我对此没有太多控制权。我可以编辑网址。现在是:

https://website1/path/server.do?sysparm_query=name=

我需要在该URL的末尾附加变量中的服务器名。我唯一可以使用的是

$host.name

哪个将在结果URL中的服务器名称之前添加“主机:”。我需要知道是否可以在上面的URL字符串中添加一些内容,这将告诉浏览器忽略“接下来的5个字符”,因此结果就是URL看起来像这样:

https://website1/path/server.do?sysparm_query=name=servername001

而不是这样:

https://website1/path/server.do?sysparm_query=name=host:servername001

希望如此...

regex http variables url
1个回答
0
投票

这里是一个代码,用于添加不带host:前缀的主机名:

var url = "https://website1/path/server.do?sysparm_query=name="; 
var $host = {
  name: 'host:servername001'
};
var newUrl = url + $host.name.replace(/^[^:]*:/, '');
console.log('- url:    ' + url);
console.log('- newUrl: ' + newUrl);
© www.soinside.com 2019 - 2024. All rights reserved.