Javascript 向现有Rest服务添加新参数
我在Java后端有一个现有的Rest服务,如下所示:Javascript 向现有Rest服务添加新参数,javascript,java,rest,Javascript,Java,Rest,我在Java后端有一个现有的Rest服务,如下所示: @RequestMapping(value = "/service/{a}/{b}/{c}", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE) public Response service(@PathVariable Long a, @PathVariable String b, @PathVariable String c, @Reques
@RequestMapping(value = "/service/{a}/{b}/{c}", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
public Response service(@PathVariable Long a, @PathVariable String b, @PathVariable String c, @RequestBody List<String> d)
我只需要添加一个新参数“e”,并尝试将其添加为一个新的路径变量:
@RequestMapping(value = "/service/{a}/{b}/{c}/{e}", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
public Response service(@PathVariable Long a, @PathVariable String b, @PathVariable String c, @PathVariable String e, @RequestBody List<String> d)
但是JS现在无法调用该服务。据我所知,这应该很有效。我错过什么了吗
在Tomcat 8.5上运行代码,通过Google Chrome 78.0.3904.87版访问GUI。控制台中出现以下错误:
Error: [$rootScope:inprog] http://errors.angularjs.org/1.4.3/$rootScope/inprog?p0=%24apply
at angular.min.js:6
at r (angular.min.js:127)
at n.$apply (angular.min.js:135)
at HTMLDivElement.<anonymous> (angular.min.js:252)
at HTMLDivElement.dispatch (jquery.min.js:3)
at HTMLDivElement.r.handle (jquery.min.js:3)
at FiberInvenInfoController.fiberInfo.disconnectAllCircuits (FiberInvenInfoController.js:714)
at n.$scope.ok (ModalServiceFiberInfo.js:428)
at fn (eval at compile (angular.min.js:212), <anonymous>:2:197)
at f (angular.min.js:252)
(anonymous) @ angular.min.js:108
(anonymous) @ angular.min.js:80
$apply @ angular.min.js:135
(anonymous) @ angular.min.js:252
dispatch @ jquery.min.js:3
r.handle @ jquery.min.js:3
FiberInvenInfoController.fiberInfo.disconnectAllCircuits @ FiberInvenInfoController.js:714
$scope.ok @ ModalServiceFiberInfo.js:428
fn @ VM866:2
f @ angular.min.js:252
$eval @ angular.min.js:134
$apply @ angular.min.js:135
(anonymous) @ angular.min.js:252
dispatch @ jquery.min.js:3
r.handle @ jquery.min.js:3
angular.min.js:92
POST http://.../rest/fiber/disconnectCircuits/7977/11-04-2019/user/PD 404
(anonymous) @ angular.min.js:92
n @ angular.min.js:88
f @ angular.min.js:86
(anonymous) @ angular.min.js:120
$eval @ angular.min.js:134
$digest @ angular.min.js:132
$apply @ angular.min.js:135
(anonymous) @ angular.min.js:252
dispatch @ jquery.min.js:3
r.handle @ jquery.min.js:3
错误:[$rootScope:inprog]http://errors.angularjs.org/1.4.3/$rootScope/inprog?p0=%24apply
在角度上。min.js:6
在r(角度最小:127)
在n.$apply(angular.min.js:135)
在HTMLDEVELENT。(angular.min.js:252)
在htmldevelment.dispatch(jquery.min.js:3)
位于htmldevelment.r.handle(jquery.min.js:3)
在fiberinveninfo.fiberInfo.disconnectAllCircuits处(fiberinveninfo.js:714)
n.$scope.ok(ModalServiceFiberInfo.js:428)
fn时(编译时求值(angular.min.js:212),:2:197)
在f(角度最小:252)
(匿名)@angular.min.js:108
(匿名)@angular.min.js:80
$apply@angular.min.js:135
(匿名)@angular.min.js:252
dispatch@jquery.min.js:3
r、 handle@jquery.min.js:3
fiberinveninfo.fiberInfo.disconnectAllCircuits@fiberinveninfo.js:714
$scope.ok@ModalServiceFiberInfo.js:428
fn@VM866:2
f@angular.min.js:252
$eval@angular.min.js:134
$apply@angular.min.js:135
(匿名)@angular.min.js:252
dispatch@jquery.min.js:3
r、 handle@jquery.min.js:3
angular.min.js:92
邮递http://.../rest/fiber/disconnectCircuits/7977/11-04-2019/user/PD 404
(匿名)@angular.min.js:92
n@angular.min.js:88
f@angular.min.js:86
(匿名)@angular.min.js:120
$eval@angular.min.js:134
$digest@angular.min.js:132
$apply@angular.min.js:135
(匿名)@angular.min.js:252
dispatch@jquery.min.js:3
r、 handle@jquery.min.js:3
可能是春天的虫子,看看这里:
它在v4.1中已修复。Spring Boot没有接收到对新的或现有Rest控制器的更改。从项目中删除默认包,并在每次发布到Tomcat之前进行项目生成,解决了此问题。浏览器控制台中有错误吗?您记得部署更新的服务器代码吗?我发布到本地Tomcat 8.5,以调试模式运行,并在chrome浏览器中清除了缓存。更新的代码在调试器中可见。我必须再次检查是否有任何错误;我对前端代码和调试不是很在行。我能够从日志中获取一些错误信息,并将其添加到我的问题中。如果有机会,我将检查spring版本,并尝试使用相同的参数调用一个全新的rest服务。调用一个全新的服务同样会产生404错误。春天似乎并没有让我的服务焕然一新。
$http.post(
'/service/'
+ a + '/'
+ b + '/'
+ c + '/'
+ e,
d)
Error: [$rootScope:inprog] http://errors.angularjs.org/1.4.3/$rootScope/inprog?p0=%24apply
at angular.min.js:6
at r (angular.min.js:127)
at n.$apply (angular.min.js:135)
at HTMLDivElement.<anonymous> (angular.min.js:252)
at HTMLDivElement.dispatch (jquery.min.js:3)
at HTMLDivElement.r.handle (jquery.min.js:3)
at FiberInvenInfoController.fiberInfo.disconnectAllCircuits (FiberInvenInfoController.js:714)
at n.$scope.ok (ModalServiceFiberInfo.js:428)
at fn (eval at compile (angular.min.js:212), <anonymous>:2:197)
at f (angular.min.js:252)
(anonymous) @ angular.min.js:108
(anonymous) @ angular.min.js:80
$apply @ angular.min.js:135
(anonymous) @ angular.min.js:252
dispatch @ jquery.min.js:3
r.handle @ jquery.min.js:3
FiberInvenInfoController.fiberInfo.disconnectAllCircuits @ FiberInvenInfoController.js:714
$scope.ok @ ModalServiceFiberInfo.js:428
fn @ VM866:2
f @ angular.min.js:252
$eval @ angular.min.js:134
$apply @ angular.min.js:135
(anonymous) @ angular.min.js:252
dispatch @ jquery.min.js:3
r.handle @ jquery.min.js:3
angular.min.js:92
POST http://.../rest/fiber/disconnectCircuits/7977/11-04-2019/user/PD 404
(anonymous) @ angular.min.js:92
n @ angular.min.js:88
f @ angular.min.js:86
(anonymous) @ angular.min.js:120
$eval @ angular.min.js:134
$digest @ angular.min.js:132
$apply @ angular.min.js:135
(anonymous) @ angular.min.js:252
dispatch @ jquery.min.js:3
r.handle @ jquery.min.js:3