zoukankan      html  css  js  c++  java
  • URL中编码问题

    1.http协议传输统一iso-8859-1传输

    jsp中用request.getparameter("keword");得到的是iso-8859-1翻译过来的,要用 keyword = new String(keyword.getBytes("iso-8859-1"),"gbk");转过来

    流程是  keyword(gbk)---keyword传输中(iso-8859-1)---接收keyword = new String(request.getparameter("keword").getBytes("iso-8859-1"),"gbk");

    2.URL中特殊字符处理

    URL无法显示某些特殊符号,这个时候就要使用编码了。编码的格式为:一个百分号,后面跟对应字符的ASCII(16进制)码值。例如 空格的编码值是"%20"。(ASCII参考)
    有些字符在URL中具有特殊含义,基本编码规则如下:
    特殊含义                                                            十六进制值 
    1.+ 表示空格(在 URL 中不能使用空格)          %20 
    2./ 分隔目录和子目录                                              %2F 
    3.? 分隔实际的 URL 和参数                                   %3F 
    4.% 指定特殊字符                                                    %25 
    5.# 表示书签                                                             %23 
    6.& URL 中指定的参数间的分隔符                        %26 
    java中URL 的编码和解码函数
    java.net.URLEncoder.encode(String s)和java.net.URLDecoder.decode(String s);
    在javascript 中URL 的编码和解码函数
    escape(String s)和unescape(String s) ;

    URL中文参数传递问题

    (1)确定JSP页面头部是否有:<%@ page contentType="text/html; charset=GBK" %>
    (2)用这个转码:
         String param= new String(request.getParameter("param").getBytes("ISO-8859-1"), "GBK");
    (3)添加filter字符过滤器

    (4)如果是通过"test.jsp?param=中文"传递参数,则需要:
         a.在传参数之前先把参数进行转码:java.net.URLEncoder.encode(param);
           取值用java.net.URLDncoder.decode(param);再转回中文
         b.在你的Tomcat目录-->conf目录-->server.xml里找出这段:
           <Connector 
             port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                   enableLookups="false" redirectPort="8443" acceptCount="100"
                   debug="0" connectionTimeout="20000" 
                   disableUploadTimeout="true" <!--在里边加上这个参数-->URIEncoding="gb2312"/> 

  • 相关阅读:
    [bzoj3218] a+b problem [最小割+数据结构优化建图]
    [bzoj3456] 城市规划 [递推+多项式求逆]
    [ARC068F] Solitaire [DP]
    [bzoj3601] 一个人的数论 [莫比乌斯反演+高斯消元]
    [中山市选2011][bzoj2440] 完全平方数 [二分+莫比乌斯容斥]
    [bzoj2159] Crash的文明世界 [斯特林数+树形dp]
    [bzoj2839] 集合计数
    通用解题方法—回溯法
    分支限界法—单源最短路径问题
    分支限界法
  • 原文地址:https://www.cnblogs.com/sanxinglan/p/3245639.html
Copyright © 2011-2022 走看看