似乎ng serve
的Web服务器Angular CLI使用(Webpack-Dev-Server)消除了URL太长时的URL哈希片段。例如,从OAuth调用取回令牌时:
http://localhost:4200/auth/sso#access_token=[access_token]&id_token=[ID_TOKEN]&token_type=Bearer&expires_in=3600
填写访问令牌和ID令牌后,该URL可以推送超过2000个字符。在我的测试中,似乎限制在1990个字符左右,并且超出限制,在请求Angular应用之前清除了哈希。我查看了用于实例化服务器的Angular CLI代码,但没有看到哈希表片段的任何特定内容。
这不是有关如何从Angular中的URL获取片段的问题的重复,当URL哈希片段较短且哈希传递到Angular应用程序时,该方法就可以很好地工作。
如何防止哈希被清除?这是Webpack Dev Server错误吗?如果是这样的话,这可能并不特定于Angular。
这与其他与Angular哈希有关的故事不是重复的,因为它特定于Webpack-Dev-Server以及它如何处理带有哈希片段的长URL。