reactjs - 用于“/.../...”形式的 URL 的 Spring 和 React Router
问题描述
我使用 Spring 作为后端,React 作为前端,我让 React Router 处理前端的所有页面路由。为此,我在下面的索引控制器将所有路径路由到“index.html”,基本上允许 React 接管路由。我正在使用正则表达式/{path:[^\\.]*}
来路由所有路径,它工作得非常好,除了它只适用于“.com/...” URL 格式而不适用于“.com/.../...”。每当我使用 React 路由器设置“.com/.../...”时,我都会收到类似于访问未定义端点时的 404 错误。
@Controller
public class IndexController {
@RequestMapping(value = "/{path:[^\\.]*}") //
public String index(Map<String, Object> model) {
return "index.html";
}
}
澄清一下:诸如“.com/api/users/1”之类的端点可以让 id 为 1 的用户完美地工作,因为它们是在我的后端控制器中定义的,但是我遇到了一些问题<Route exact path="/startuppage/:id" component={StartupPage} />
。我不能把它作为后端端点,因为我想在这个 URL 上显示一个页面,而不仅仅是让它返回一些数据库对象。
我的路线的 ReactJS 代码:
<Switch>
<Route exact path="/" component={Home} />
<Route path="/database" component={Database} />
<Route path="/submission" component={Submission} />
<Route path="/submitted" component={Submitted} />
<Route exact path="/startuppage/:id" component={StartupPage} />
</Switch>
解决方案
推荐阅读
- finance - 如何使用 Pine Editor 在 TradingView 上创建和填充标签?
- python - 如何从亚马逊产品页面获取隐藏信息(平均评论)?(网络抓取)
- angularjs - Html2canvas 不适用于 angular.js 中的 Google 折线图
- aspnetboilerplate - 对于 asp.net 样板核心版本,发布需要 robocopy
- python - 加载 Json 文件不区分大小写
- ruby-on-rails - 使用 rabl 渲染哈希数组
- python - 变量在子程序中没有获得价值
- visual-studio - 无法在 VS 2017 15.7.5 中定位 .NET Framework 4.7.2
- c# - 如何将用于审计目的的 Web n 层应用程序中的用户身份从用户界面层传递到数据访问层?
- android - 如何在 android 中为特定应用设置代理设置?