MVC的 url 传递参数无效

有些符号(例如“=”)在URL中 直接传递是无效的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了。下表中列出了一些URL特殊符号及编码
      十六进制值
1. + URL 中+号表示空格 %2B
2. 空格 URL中的空格可以用+号或者编码 %20
3. / 分隔目录和子目录 %2F
4. ? 分隔实际的 URL 和参数 %3F
5. % 指定特殊字符 %25
6. # 表示书签 %23
7. & URL 中指定的参数间的分隔符 %26
8. = URL 中指定参数的值 %3D
例如: http://localhost:2692/PDFVIEWER/web/viewer.html?file=http://localhost:2692/TOV/DASystem/GetStreaem?path%3Dftp://ftp账号:ftp密码@IP地址/0001/E_File3/2017526/test.PDF

在这里要传递path这个参数,本应该和前面参数file一样写成“http://*/*.html?file=***”,但是,file这个参数本身也是一个http链接,而path参数正是属于file参数包含的链接 ,这就导致file中链接传递的参数 path后面的等于号(“=”)无法识别,这里的解决办法就是使用等于号的转义符来代替等于号(“=”),%3D就是等于号(“=”)的转义符,使用转义符来替换以实现功能。

原文地址:https://www.cnblogs.com/MirZhai/p/7872447.html