Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否传递url参数而不带问号和等号?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 是否传递url参数而不带问号和等号?

Javascript 是否传递url参数而不带问号和等号?,javascript,jquery,html,Javascript,Jquery,Html,我正在使用javascript从浏览器中检索url参数,并将其传递给运行sockets.io的服务器。它的工作原理完全符合预期,但我想在不需要问号或等号的情况下获取参数 我希望它是:/var-或/var等,而不是/?var= 有没有一种不需要重写服务器端URL就能实现这一点的好方法 当前代码: var urlParam = location.search.split("var=")[1]; // get the url parameter http://localhost/?var=[some

我正在使用javascript从浏览器中检索url参数,并将其传递给运行sockets.io的服务器。它的工作原理完全符合预期,但我想在不需要问号或等号的情况下获取参数

我希望它是:
/var-
/var
等,而不是
/?var=

有没有一种不需要重写服务器端URL就能实现这一点的好方法

当前代码:

var urlParam = location.search.split("var=")[1]; // get the url parameter http://localhost/?var=[some url parameter value]

if (urlParam == null) {  
    socket.emit('newRoom'); 
} else { 
    socket.emit('urlParam', urlParam); 
}

谢谢

当然可以获取url

window.location.href
返回url的完整路径。您可以使用
.split('/')

因此
windows.location.href.split('/')
将为您提供一个字符串数组,其中每个元素都是url的不同部分。例如,在
example.com/page/var1/var2
上运行它将为您提供一个数组
[“example.com”、“page”、“var1”、“var2]”。


请记住,您的服务器仍然需要知道如何将请求路由到example.com/page/var1/var2。因此,如果var1和var2是变量,例如.com/page,您的服务器需要知道如何为example.com/page提供服务。

您能否共享当前用于获取url参数的代码?发布当前代码?使用#如何?发布代码。当然,您可以这样做。研究SPA如何使用“shebang”URL进行路由。看,我想这就是我刚才忽略的逻辑。。非常感谢。
var urlParam = location.search.split("var=")[1];

var mapObj = {
   "?":"",
   "=":"-"
};

urlParam = urlParam.replace(/(\?|=)/g, function (matched) {
  return mapObj[matched];
});