我开发了一个使用spring mvc(后端)和前端角度的移动互联网预订引擎。
通常,我的路径会这样http://localhost:8080/mobileibenew/booking;
从控制器内部,我对后端(弹簧)进行$ http调用以获取或发布api数据。例如:
$http({
method : 'POST',
url : '/mobileibenew/availability',
data : {"routes": routeData, "adults": adults, "searchBy": "BY_FLIGHT"});
mobileibenew是spring项目的名称。如果我更改项目的名称,那么这将直接影响我的前端代码,即$ http调用。
在前端检索我的spring项目名称的最佳方法是什么(无需字符串操作)?
它必须看起来像这样:
$http({ method : 'POST', url: projectname + '/booking', data : 'somedata'});
其中“ projectname”可以是保存项目名称的变量。
这消除了我不必进入每个文件和更改名称的麻烦。
请记住,这是一个春季项目。
最佳答案
您无需在URL中编码上下文(在您的情况下为mobileibenew)。当服务器将脚本返回给浏览器时,浏览器知道从哪个上下文服务器返回了请求。
在javascript中使用相对网址,如下所示。因此,当您更改项目名称或使用其他上下文名称进行部署时,您无需进行任何更改
$http({
method : 'POST',
url : 'availability',
data : {"routes": routeData, "adults": adults, "searchBy": "BY_FLIGHT"});
关于java - Angular + Spring,$ http和$ location获取项目名称,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37519192/