hashtags (#) em parâmetros codificados em URL decodificados no redirecionamento

Eu tenho um sistema de dois servidores ... um hospedando o aplicativo e o outro hospedando a autenticação / autorização. Quando o aplicativo detecta que o usuário ainda não está conectado, ele redireciona para o servidor de autenticação e passa, como parâmetro, o URL originalmente solicitado pelo usuário para que, após a autenticação, o usuário seja redirecionado de volta ao servidor de aplicativos para o URL exato originalmente solicitado.

No entanto, se esse URL original contiver um #, a rotina inteira será escolhida. Parece que os navegadores estão decodificando o parâmetro codificado url e, como conseqüência, descartando qualquer coisa após o # para o chão. Eu tentei isso no Chrome, Safari e Firefox.

Exemplo:

URL original:

https://xxx.com/#/main/by-users?param1=53&param2=13&param3=39

URL de redirecionamento:

https://yyy.com/signin/?returnURL=https%3A%2F%2Fxxx.com%3A80%2F%23%2Fmain%2Fby-users%3Fparam1%3D53%26param2%3D13%26param3%3D39

Navegador mostra:

https://yyy.com/signin/?returnURL=https%3A%2F%2Fxxx.com%2F#/main/by-users?param1=53&param2=13&param3=39

Como você pode ver, tudo incluindo e depois do # é decodificado. Assim, o servidor nunca recebe o valor do parâmetro 'returnURL' completo. Basicamente só fica

https://xxx.com/

Isso deve ser parte de alguma especificação em algum lugar, embora pareça insano que um # codificado deva ser decodificado e tratado como se nunca tivesse sido codificado em primeiro lugar. Mas como se contornar isso?

Obrigado.

questionAnswers(1)

yourAnswerToTheQuestion