我正在构建一个单页应用程序,前端使用ReactJS和React Router。
应用程序应使用传统的应用程序服务器托管Tomcat或Weblogic(只是由于我们客户要求的任何原因)。
我的问题很简单:在React中,我怎样才能获得与jsp中的request.getContextPath()等效的应用程序上下文路径?我在谷歌搜索了很多,但没有一个能直接给我答案。是否具有这样的等效功能?或者,如果我可以从JSP获取此路径?如果是这样,如何抓住它?
感谢。
答案 0 :(得分:0)
我也遇到了这个问题,并像这样解决了它:
在reactjs中,当您构建用于生产的应用程序时,需要运行“ npm run build”。
要正确构建它,您需要将package.json中的homepage属性设置为网站的主URL。
就我而言,我将http://localhost:3000用于本地开发,并将http://localhost:8080/myapp用于阶段测试。
该应用需要知道网址中是否存在“ myapp”。这基本上是这篇文章的问题。
我的答案是,因为无论如何您都需要在package.json中指定homepage属性,所以我正在使用此值来查找上下文路径。
我这样做是这样的: {packageJson.homepage.substring(packageJson.homepage.lastIndexOf(“ /”))+“ /登录”}
对于我的测试环境,它返回:/ login 对于我的舞台环境,它返回:/ myapp / login
也许有帮助。