【问题标题】:How to remove # in URL of .NET Core when it's using app.UseFileServer() to serve react build production.NET Core 使用 app.UseFileServer() 为反应构建生产提供服务时如何在 .NET Core 的 URL 中删除 #
【发布时间】:2020-05-25 16:10:12
【问题描述】:

有什么方法可以删除 .NET Core 项目 URL 中的#?我的项目正在使用app.UseFileServer() 在 wwwroot 内提供反应应用程序(生产/从反应应用程序构建)。只要我们访问使用 IIS 服务的 .NET Core 的根 URL,它就可以正常工作,例如:

https://yourdomain.com

但是如果我们想去react的路由,例如route about,它需要一个这样的URL:

https://yourdomain.com/#/about

我不知道为什么#符号应该在那里,有什么办法可以使网址像这样:

https://yourdomain.com/about

所以直接访问react的路由about

【问题讨论】:

  • “我不知道为什么应该有 # 符号” - 因为 # 之后的所有内容都称为片段,并且不会发送到服务器.如果是这样,它就是路径的一部分。将除(目录)白名单(用于静态资源)之外的所有路径配置到您的 index.html,还是保持这种方式?

标签: c# reactjs asp.net-core


【解决方案1】:

您正在 react 应用程序中使用 hashHistory 路由。如果要删除#请使用browserHistory路由 有关更多详细信息,请查看此
https://stackoverflow.com/a/35185338/7327166

【讨论】:

  • 感谢您的回答,但实际上如果我使用带有 npm start 命令的 node js 服务,它可以正常服务,而无需 #。
猜你喜欢
  • 2016-09-16
  • 2020-10-21
  • 1970-01-01
  • 2023-01-30
  • 1970-01-01
  • 1970-01-01
  • 2019-04-25
  • 2020-07-13
  • 2021-10-22
相关资源
最近更新 更多