Por que seu link perde dados: corrija parâmetros e fragmentos
Aprenda a distinguir & e # em uma URL, evitar dupla codificação e conferir no WikiURL o link exato que pretende compartilhar.

Uma página que abre nem sempre recebe o que você esperava
Você preparou um link para uma busca de café e chá. A página abre, mas os resultados não correspondem à intenção. Antes de culpar o servidor ou o encurtador, revise o endereço exato que compartilhou. No exemplo fictício, q=cafe&te não representa um único valor cafe&te na interpretação habitual de parâmetros de formulário: & separa entradas. Além disso, #precios marca um fragmento. Substitua example.invalid por uma página sua que aceite essa consulta antes de testar um endereço real.
Divida o diagnóstico em três perguntas: qual página deseja abrir, quais dados ela deve receber e qual parte deve mostrar depois? Copie a URL do link, não somente o texto visível do botão. Guarde uma versão de referência antes de editar. Este guia propõe revisar os componentes e depois conferir o resultado com WikiURL; não promete que qualquer site reconheça q nem que uma resposta bem-sucedida signifique resultados de busca corretos.
https://example.invalid/buscar?q=cafe&te#preciosSe o ampersand faz parte do texto, não o use como separador
Para buscar literalmente cafe & te, o ampersand pertence ao valor de q. Ao construir parâmetros com URLSearchParams, forneça o texto sem codificação; a serialização representará esse caractere como %26. A MDN explica que essa interface aplica a codificação de formulários ao converter parâmetros em texto e representa espaços com +. Isso não significa substituir todos os ampersands da URL: alguns separam parâmetros intencionalmente.
O exemplo JavaScript cria o endereço a partir de uma base, define o valor da busca e adiciona o fragmento separadamente. Você pode executá-lo localmente em um ambiente JavaScript para observar o resultado sem enviar a busca ao domínio fictício. Se não programa, use o link gerado pela própria página de busca em vez de concatenar texto manualmente. Compare o valor esperado com o resultado do site; ver %26 no link não basta para saber como uma aplicação específica interpreta os dados.
const url = new URL("https://example.invalid/buscar");
url.searchParams.set("q", "cafe & te");
url.hash = "precios";
console.log(url.href);
// https://example.invalid/buscar?q=cafe+%26+te#preciosO fragmento não é um parâmetro recebido pelo servidor
A MDN documenta que o fragmento depois de # é processado pelo cliente e não é enviado ao servidor ao solicitar o recurso. Uma página pode usá-lo para chegar a uma seção, como precios, ou para outro comportamento da aplicação. Portanto, em q=cafe#te, te não completa o valor que o servidor recebe naquela solicitação. Se # deve fazer parte do texto pesquisado, sua representação dentro do valor será %23, como mostra o terceiro endereço.
Confira os dois efeitos separadamente: a busca deve mostrar os resultados previstos e o fragmento deve levar ao lugar desejado. A seção precisa existir ou a aplicação deve reconhecer o fragmento. Um verificador que consulta o site pelo servidor não confirma, sozinho, que o navegador se desloca até uma seção. Também não apague todos os fragmentos como solução universal: você pode remover justamente a parte necessária para quem recebe o link.
https://example.invalid/buscar?q=cafe%23te#preciosCodifique o valor uma vez, não o endereço inteiro
O padrão RFC 3986 diferencia caracteres delimitadores de componentes e dados e alerta contra codificar ou decodificar repetidamente a mesma cadeia. Se você fornecer cafe%26te como texto já codificado a uma função que espera um valor sem codificação, o sinal de porcentagem pode virar %25, gerando %2526. Você adicionou uma camada, sem preservar automaticamente a busca desejada. As duas linhas do exemplo ajudam a reconhecer essa alteração.
A correção depende da origem dos dados. Se vêm de texto humano, passe-os sem codificar para a interface que constrói parâmetros. Se vêm de uma URL completa válida, não a trate como um único valor para recodificar o endereço inteiro. Documente o que cada função ou formulário recebe. Evite substituições globais de %, & ou #: elas podem alterar delimitadores corretos, parâmetros necessários ou caminhos que você não pretendia modificar.
q=cafe%26te
q=cafe%2526teUse WikiURL para a resposta e o navegador para o conteúdo
Quando tiver um endereço público real, cole-o no verificador de URL do WikiURL. Confira o status HTTP e o destino final retornados. A implementação consulta pelo servidor e acompanha redirecionamentos; essa revisão ajuda a localizar destinos inesperados. Não cole links de gerenciamento, senhas ou endereços com dados privados. Não tente verificar example.invalid dos exemplos: ele serve aqui como destino fictício.
Abra também a versão real no navegador e revise a busca e a seção. Uma resposta bem-sucedida pode carregar a página sem aplicar o filtro esperado. Se houver redirecionamento, compare seus parâmetros com a referência e observe o fragmento no navegador. O verificador não interpreta a lógica da aplicação por você, não certifica segurança nem comprova permissão de uma conta para ver conteúdo. O objetivo é combinar evidência da resposta com uma revisão funcional.
Teste a cópia que outra pessoa receberá
Cole o link final no canal onde o compartilhará e abra essa cópia antes de distribuí-lo amplamente. Confira se não incluiu o ponto final da frase, perdeu parte ao copiar ou confundiu o texto visível com o destino. Teste sem depender da sessão de administrador quando o conteúdo deve ser público. Se converter em QR, confira também o endereço exibido pelo escaneamento, além do arquivo de origem.
Mantenha um pequeno registro: endereço original, valor de busca esperado, fragmento previsto, URL compartilhada e resultado observado. Se falhar, volte ao componente específico e repita o teste após corrigi-lo. Publique somente a versão conferida. Assim você distingue um problema de construção de parâmetros, um redirecionamento que altera o destino e um comportamento do navegador, sem transformar um link que abre em garantia de preservar todos os dados que pretendia enviar.