我可以检查端口号是否存在于给定的URL字符串中?
有时用户可以输入202.567.89.254:8088
或http://202.567.89.254:8088/
或http://202.567.89.254
。
在上述所有选项中,如果端口号存在,则默认情况下不执行任何操作{}默认情况下使用结束斜杠8080
附加8080/
。
可以在JavaScript中使用吗?
答案 0 :(得分:8)
答案 1 :(得分:4)
在这里,您可以采用最简单的方法,设置href
属性。
var parser = document.createElement('a');
parser.href = "http://example.com:3000/pathname/?search=test#hash";
console.log(parser.protocol); // => "http:"
console.log(parser.hostname); // => "example.com"
console.log(parser.port); // => "3000"
console.log(parser.pathname); // => "/pathname/"
console.log(parser.host); // => "example.com:3000"
了解更多here
答案 2 :(得分:4)
您可以使用location.port属性。
if(location.port){//then there is port}
else{//No port}
答案 3 :(得分:1)
看看这是否适合你:
function appendPort(url){
if(!url.match(/\:\d+$/)){
return url + ":8080";
}
}
如果您想在用户输入的位置执行此操作:
if(!location.port){
location.port = 8080; // doing this will take care of rest of the URL component
}
:)
答案 4 :(得分:1)
尝试以下代码
urlSplit = url.split(":")
if(urlSplit.length==3){
port = urlSplit[2];
}
else{
port = 80;
}
答案 5 :(得分:1)
您可以查看Location
Location.port
将满足您的目的
答案 6 :(得分:1)
使用location.port
。示例如下。
function appendPort(){
if(location.port.length === 0){
location.host = location.host + ":8080/";
}
}
答案 7 :(得分:1)
使用此:
WLResourceRequest request = new WLResourceRequest("Actual server path here", GET);
request.addHeader(new BasicHeader("IfAnyHeader", "here"));
request.send(new ResponseListener());
答案 8 :(得分:1)
您可以使用js的位置对象
location.port
答案 9 :(得分:1)
在调试器中使用location
,您将获得host
hostname
href
origin
pathname
port
protocol
还有更多的价值