Micronaut 如何在同一控制器中进行 Http 重定向

问题描述

我想在执行 @Get("cancel/{orderId") 后重定向@Get("/{orderId}") }")。还有我如何在重定向上指定我想要转到 @Get("/{orderId}") 而不是 @Delete("/{orderId}") em>

在取消端点中,我只是向订单添加一个取消日期,我不会删除订单

@Get("/{orderId}")
public HttpResponse<OrderDto> getorder(String campaignId) {
    OrderDto o = service.findOrder(UUID.fromString(orderId));
    if (o == null) {
        log.info("Order not found: " + orderId);
        return HttpResponse.notFound();
    }
    return HttpResponse.ok(o);
}

@Delete("/{orderId}")
public HttpResponse<Void> deleteOrder(String orderId) {
    service.deleteOrder(UUID.fromString(orderId));
    return HttpResponse.ok();
}

@Get("cancel/{orderId}")
public HttpResponse<Void> cancelOrder(UUID orderId) {
    service.cancelOrder(orderId);
    return HttpResponse.redirect(URI.create("/" + orderId.toString()));
}

尝试这种方式后,我得到了错误

{"message":"Page Not Found","_links":{"self":{"href":"/gzhb-a81-5574-ad38-3817d","templated":false} }}

有什么建议吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)