通用URL解码函数应该处理“+”字符还是只处理“%20”等字符?

时间:2015-09-23 14:09:17

标签: http vbscript decoding

我想知道通用URL解码功能是否应该处理“+”字符(空格)以及所有字符(空格)。 “%20”等编码?

目前还没有具体的用例。

有没有适合在此引用的规范?

我在VBScript中进行此操作(但这与我认为的问题无关)我有两个版本,一个用“+”代替“” {1}}“(空格)......

Public Function decode(s)
    s = replace(s, "+", " ")
    For i = 1 To Len(s)
        If Mid(s, i, 1) = "%" Then
            decode = decode & Chr("&H" & Mid(s, i+1, 2))
            i = i + 2
        Else
            decode = decode & Mid(s, i, 1)
        End If
    Next
End Function

......还有一个没有:

Public Function decode(s)
    For i = 1 To Len(s)
        If Mid(s, i, 1) = "%" Then
            decode = decode & Chr("&H" & Mid(s, i+1, 2))
            i = i + 2
        Else
            decode = decode & Mid(s, i, 1)
        End If
    Next
End Function

1 个答案:

答案 0 :(得分:1)

如果它应该是通用的:没有。 " +"的作用非常特定于HTML表单,与通用URI处理无关。