在 New Edge 浏览器中反应 HashRouter 问题
React HashRouter issue in New Edge browser
我的 React 应用程序使用 HashRouter 进行客户端路由。没有服务器端路由,这是托管在 IIS 上的。 # 路径第一次在 Edge 上丢失 (sso)。但是可以在同一页面或不同页面上进行连续尝试(只要第一页打开)页面刷新也可以正常工作。所以基本上 HashRouter 可以正常工作,而不是第一次在新的 Edge 浏览器上使用
第一次 - location.hash - “”
刷新时 - location.hash - #/pathname
<HashRouter>
<App />
</HashRouter>
可以在 Chrome 中通过清除浏览器数据重新创建
我发现在 URL 中使用 # 段的其他开发人员也广泛体验过它。浏览器保留了#fragment,但在 SSO(单点登录)之后,返回的 URL 忽略了散列段(因为它使用 #segment 来附加授权令牌)。以下link解释并提出解决方案。
https://chevtek.io/how-to-persist-url-hash-fragments-across-a-login-redirect/
我做了以下
我使用 # (react HashRouter) 进行客户端路由。我所做的是将 url 中的着陆页附加为查询字符串之一,然后从 URL 中获取值并重新附加到当前 URL 哈希 (window.location.hash)
我的 React 应用程序使用 HashRouter 进行客户端路由。没有服务器端路由,这是托管在 IIS 上的。 # 路径第一次在 Edge 上丢失 (sso)。但是可以在同一页面或不同页面上进行连续尝试(只要第一页打开)页面刷新也可以正常工作。所以基本上 HashRouter 可以正常工作,而不是第一次在新的 Edge 浏览器上使用
第一次 - location.hash - “”
刷新时 - location.hash - #/pathname
<HashRouter>
<App />
</HashRouter>
可以在 Chrome 中通过清除浏览器数据重新创建
我发现在 URL 中使用 # 段的其他开发人员也广泛体验过它。浏览器保留了#fragment,但在 SSO(单点登录)之后,返回的 URL 忽略了散列段(因为它使用 #segment 来附加授权令牌)。以下link解释并提出解决方案。
https://chevtek.io/how-to-persist-url-hash-fragments-across-a-login-redirect/
我做了以下 我使用 # (react HashRouter) 进行客户端路由。我所做的是将 url 中的着陆页附加为查询字符串之一,然后从 URL 中获取值并重新附加到当前 URL 哈希 (window.location.hash)