我有一个包含一些产品代码的数据库,例如:LGE& R,以及该产品的PDF格式LGE& R.
pdf被回显到用户点击下载pdf的链接,该文件存储在具有相同名称的服务器上,但是&字符导致文件无法找到,我认为它得到了改变。
关于如何改变它的任何想法?
谢谢你们
答案 0 :(得分:1)
听起来你需要在回复它之前在PDF链接上调用urlencode。
这是因为&
在网址中具有特殊含义,因此您认为要请求的网址(例如files/lge&r.pdf
)可能由服务器转换为files/lge
, r.pdf
丢失或被视为GET参数。
解决方案是“编码”网址,用%[something]
(例如& is %26
替换有意义的字符(例如&,?,/等),这是然后由服务器解码为其文字字符。
答案 1 :(得分:0)
http://www.december.com/html/spec/esccodes.html
1)有一个特定的转义字符或&标志,我会尝试替换URL来使用它(%26)代替& ......
如果(1)不起作用,那么你可以简单地删除&并以这种方式提供URL,拦截请求,在服务器上重新路由。