【问题标题】:Why do I keep receiving error message when changing the URL in address bar of SPA - Azure AD为什么在 SPA 的地址栏中更改 URL 时不断收到错误消息 - Azure AD
【发布时间】:2021-08-24 09:22:23
【问题描述】:

以下消息是我在网络浏览器的地址栏中手动更改 URL 时收到的消息:

您要查找的资源已被删除,有它的名字 已更改,或暂时不可用。

我不知道怎么了?...

【问题讨论】:

  • 你的服务器需要重写所有对 index.html 的不存在路径的请求——这样,Angular 可以处理路由。
  • 您在哪里部署了您的 SPA?正如@MikeOne 所说,这很可能是服务器试图路由请求而实际上客户端需要处理路由的问题。
  • 你有例子或教程吗?

标签: angular azure azure-active-directory single-page-application


【解决方案1】:

感谢@Mike、@Juunas 的评论。

根据错误,它显示客户端应该路由请求,而不是服务器正在路由请求。

基本上,当您单击一个链接时,一些 Javascript 会运行来操纵地址栏中的 URL,而不会导致页面刷新,这反过来会导致 React Router 在客户端执行页面转换。

完全绕过问题:哈希历史

使用哈希历史而不是浏览器历史,关于页面的 URL 将如下所示:http://example.com/#/about 哈希 (#) 符号后面的部分不会发送到服务器。所以服务器只看到http://example.com/,并按预期发送索引页。 React-Router 会选择 #/about 部分并显示正确的页面。

有关服务器端与客户端的文档,请参阅下面的 So 线程。

React-router urls don't work when refreshing or writing manually

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-21
    • 1970-01-01
    相关资源
    最近更新 更多