0

嗨,嗯,使用这段代码通过coldfusion对url进行编码

dataURL=<cfqueryparam cfsqltype="CF_SQL_VARCHAR" value="#URLEncodedFormat(form.FLV_FILE_7,'UTF-8')#" maxlength="255">,

并且它也对点字符进行编码,这会在为特定 url name 生成签名时产生不同的 url。有人对这个问题有任何想法吗?有没有办法省略点字符并执行 urlEncode?

4

2 回答 2

1

这是正常的,因为文档提到 URLEncodedFormat 用等效的十六进制转义序列替换所有非字母数字字符。

如果您不想转换点,您可以通过使用 #Replace(URLEncodedFormat(form.FLV_FILE_7,'UTF-8'),'%2E','.','ALL')#Replace(URLEncodedFormat(form.FLV_FILE_7,'UTF-8'),'%2E','.','ALL')#

尽管我可能会考虑调整要求您将未提及的点解码并尽可能在那里解决的参数。

于 2012-04-27T15:58:38.950 回答
1

您也可以将其称为 URLEncodedFormat(form['FLV_FILE_7'], 'UTF-8') 并避免使用点。

于 2012-04-27T17:27:06.033 回答