美文网首页@IT·互联网
jsp页面或者JS中接收url参数的方法

jsp页面或者JS中接收url参数的方法

作者: 黑码不黑 | 来源:发表于2018-07-16 11:59 被阅读0次

    假如有这么一个请求:http://localhost:8080/appWeb/text/hello.jsp?name=join

    jsp中获得url参数方法

    在jsp页面接收url参数,可以使用这样的方法:

    <%
      String name = request.getParameter("name");
    //另外还有一些其他的方法获得而不同的信息,例如
    String contentPath= request.getContentPath();//获得工程名称,此时为/appWeb
    String servername = request.getServerName(),//返回当前页面所在的服务器的名字;
    String serverPort = request.getServerPort();//获得所在服务器使用的端口
    %>
    

    在jsp中可以这样使用:<body>hi,<%=name%></body>
    注:<%=name%> 不能防御XSS攻击
    当然也可以在<body>中使用 ${param.name} 方法来获得,这里的param 是隐含对象,相当于reques.getParameter()方法。如:

    <body>hi,${param.name}</body>
    
    

    js中获得url参数方法

    //获得url中所有参数
    function getQueryVariable(variable)
    {
        var query = window.location.href.slice(window.location.href.indexOf('?')+1).split('&'); 
           for (var i=0;i<query.length;i++) {
                   var pair = query[i].split("=");
                   if(pair[0] == variable){return pair[1];}
           }
           return(false);
    }
    

    此时如果url参数包含中文的话就需要进行转码操作,如下:

    var name=decodeURI(getQueryVariable('name'));
    

    英文不需要转码操作,但是建议始终进行转码操作,这样处理起来会方便很多。

    相关文章

      网友评论

        本文标题:jsp页面或者JS中接收url参数的方法

        本文链接:https://www.haomeiwen.com/subject/gfivpftx.html