哪些字符需要urlencode编码?具体怎么处理?
JS用escape()/encodeURI()/encodeURIComponent()方法编码,用unescape()/decodeURI()/ecodeURIComponent()解码.

escape()/encodeURI()/encodeURIComponent()的区别:
encodeURI()不编码82个字符!#$&'()*+-./:;=?@_~0-9a-zA-Z
encodeURIComponent()不编码71个字符! '()*-._~0-9a-zA-Z
escape()不编码69个字符*+-./@_0-9a-zA-Z

如果发送页面和接收页面的charset是一样的,只需要用escape()即可,如果发送页面是gb2312,而接收页面是utf-9,就要用encodeURI()/encodeURIComponent(),他们的区别在于,后者编码的字符更多.如果要传递内容而非地址栏参数,请使用encodeURIComponent().

PHP用urlencode()不编码,用urldecode()解码.或者用rawurlencode()编码,用rawurldecode()解码
区别在于rawurlencode()编码的字符更多,包括除-_.以外的所有字符,而urlencode()只编码-_. 之外的非字母非数字字符.特殊字符地址栏编码表

空格 %20
! %21
# %23
$ %24
% %25
& %26
' %27
( %28
) %29
* %2A
+ %2B
, %2C
. %2E
/ %2F
: %3A
; %3B
= %3D
? %3F
@ %40
[ %5B
\ %5C
] %5D

最新文章

  1. go的mgo,连接未释放问题,连接泄露。
  2. NGUI 3.0.7的新锚点系统设置不好就会造成显示错误的错觉
  3. 深入理解:JavaScript原型与继承
  4. 关于hadoop 配置文件的一些实验
  5. WPF登陆窗口、主窗口切换问题
  6. 多线程&NSObject&NSThread&NSOperation&GCD
  7. 系统yum源更新及某些软件官方源安装
  8. sharepoint SPFolder的使用
  9. 第一个输出程序 Console.WriteLine
  10. Python笔记6(异常)-20160924
  11. 第14天dbutils与案例
  12. 【高精度乘法】NOIP2003麦森数
  13. Python基础篇(九)
  14. 策略模式(Strategy Model)
  15. loj#2049. 「HNOI2016」网络(set 树剖 暴力)
  16. Find the duplicate Number (鸽巢原理) leetcode java
  17. ios-toolchain-based-on-clang-for-linux
  18. python 代码的缩进位置决定执行部分
  19. egret 开发总结
  20. 应用开发之Asp.net

热门文章

  1. Android 项目中常用到的第三方组件
  2. 高质量JavaScript代码书写基本要点
  3. final运用于内部类访问局部变量
  4. VB6 GDI+ 入门教程[8] Bitmap魔法(1):创建
  5. iOS蓝牙4.0开发(BLE)
  6. CreateDIBSection函数
  7. apk瘦身(包大小优化)
  8. [你必须知道的.NET] 第八回:品味类型---值类型与引用类型(上)-内存有理
  9. hdu 1805Expressions(二叉树构造的后缀表达式)
  10. 探究linux文件