首页 > 解决方案 > 将球衣翻译成 spring rest api 端点给出 404。端点在本地测试中按预期工作

问题描述

我正在将整体中的球衣休息 API 重构和重写为弹簧休息,并将它们公开为招摇文档。我在使用以下界面时遇到问题。我认为它可能不会直接从球衣定义中翻译出来,但我看不出错误在哪里。

我需要 API,向消费者提供相同的端点。

任何帮助是极大的赞赏。

PS:我以安全的名义歪曲了一些名称。

春天

//Methods in api return 404 from clients. Though works as intended when testing locally.

@Secured({Roles.SOME_FANCY_ROLE})
@RequestMapping("principal/")
@Api(value = "principal", tags = "Authentication", produces = "application/json", consumes = "application/json")
public interface PrincipalAuth{

    @RequestMapping(value = "principal", method = RequestMethod.POST)
    @ResponseBody
    ApiPrincipal principal(@RequestHeader("x-forwarded-for") String forwardedFor,  HttpServletRequest request, @RequestBody ApiAuthenticationRequest authRequest) throws UserError;
....



//Original jersey interface.

//path is implemented in controller as such
//@Component
//@Path("principal/")

public interface PrincipalAuth{


@RolesAllowed({Roles.SOME_FANCY_ROLE})
@POST
@Path("principal/")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
ApiPrincipal principal(@HeaderParam("x-forwarded-for") String forwardedFor, @Context HttpServletRequest request, ApiAuthenticationRequest authRequest) throws UserError;

标签: springjersey

解决方案


推荐阅读