zoukankan      html  css  js  c++  java
  • JS获取url参数及url编码、解码

    完整的URL由这几个部分构成:scheme://host:port/path?query#fragment ,各部分的取法如下:

    window.location.href:获取完整url的方法:,即scheme://host:port/path?query#fragment

    window.location.protocol:获取rul协议scheme

    window.location.host:获取host

    window.location.port:获取端口号

    window.location.pathname:获取url路径

    window.location.search:获取参数query部分,注意此处返回的是?query

    window.location.hash:获取锚点,#fragment

    在js中可以使用escape(), encodeURL(), encodeURIComponent(),三种方法都有一些不会被编码的符号:

    escape():@ * / +

    encodeURL():! @ # $& * ( ) = : / ; ? + '

    encodeURIComponent():! * ( ) '

    在java端可以使用URLDecoder.decode(“中文”, "UTF-8");来进行解码

    但是由于使用request.getParameter()来获取参数时已经对编码进行了一次解码,所以一般情况下只要在js中使用

    encodeURIComponent("中文");

    在java端直接使用request.getParameter()来获取即可返回中文。

    如果你想在java端使用URLDecoder.decode(“中文”, "UTF-8");来解码也可以在js中进行二次编码,即:

    encodeURIComponent(encodeURIComponent("中文"));

    如果不进行二次编码的话,在java端通过decode方法取的会是乱码。

  • 相关阅读:
    C#调用WinAPI(转)
    C++升级到C#,内存数据读取问题
    锦里未成行
    创业用人九招成功法则
    彩霞满天
    特别提醒: 7种不良习惯直接影响你晋升!
    生意大展示:49种简易创业方法大比拼
    阴阳天
    受益无穷的28条职场语录
    哈佛:创业者需具备的素质及培养方法
  • 原文地址:https://www.cnblogs.com/jinzhiming/p/4809576.html
Copyright © 2011-2022 走看看