URL含转义字符无法登录,密码以#开头访问带认证站点跳转异常如何解决
问题原因及解决方法
#号在URL标准中是片段标识符的起始标记,解析时#后的内容会被识别为页面锚点,不会被带入身份认证部分传递给服务端。你之前用反斜杠转义的方式不符合URL编码规范,所以不会生效。
正确的解决方式是对密码中的#做URL编码转义,#对应的URL编码值为%23。
以你提到的用户名john、密码#appname为例,拼接后的正确链接格式为:
http://john:%23appname@the-site.com
如果后续用户名或密码里出现其他URL保留字符(比如@、&、?、空格等),都可以按照URL编码规则替换对应字符即可正常使用,常见的对应编码比如@对应%40,空格对应%20,&对应%26。
内容的提问来源于stack exchange,提问作者Johnson
相关产品推荐
相关产品推荐

