HTTP URL - caracteres permitidos em nomes de parâmetro

votos
20

Existe alguma restrição formal sobre qual caracteres são permitidos em nomes de parâmetros de URL?

Estive lendo RFC3986 ( Uniform Resource Identifier (URI): Generic Syntax), mas chegou a nenhuma conclusão definitiva.

Sei que existem limitações práticas, mas seria realmente ser proibido de fazer algo como:

param com \ engraçado <caracteres> = some_value

enquanto eu escapar-lo corretamente:

param% 20with% 1cfunny% 3cchars% 3e = some_value
Publicado 02/05/2009 em 12:34
fonte usuário
Em outras línguas...                            


3 respostas

votos
9

Não há restrições sobre os nomes dos parâmetros escaparam nas especificações URI. Pode haver restrições no software do lado do servidor que você usa, no entanto. Isto é especialmente verdadeiro se você usar scripts “caseiros” para interpretar URIs.

Respondeu 02/05/2009 em 12:38
fonte usuário

votos
5

Você também deve ler RFC2396 . Parece ser mais informativa do que RFC3986.

Respondeu 02/05/2009 em 13:16
fonte usuário

votos
1

Há caracteres reservados para URLs, mas contanto que você escapar (urlencode), então você deve ser fino.

Dependendo do quadro usado, você pode obter exceções se você tentar enviar valores suspeitos. ASP.NET tem filtragem de conteúdo que irá lançar exceções se você tentar enviar dados "inseguros", como scripts ou HTML. Isso é uma característica do quadro que, em vez de uma limitação ou regra imposta pela sintaxe URL.

Respondeu 02/05/2009 em 12:37
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more