gpt4 book ai didi

json - Dropwizard/泽西 : Authentication and JSON parameter

转载 作者:行者123 更新时间:2023-12-04 15:35:47 26 4
gpt4 key购买 nike

我想为资源的 REST 接口(interface)提供这样的方法

@POST
@Consumes(MediaType.APPLICATION_JSON)
public void add(@Auth User user, @Valid Food food) {
//consume
}

However, this is not possible as I get an error like: "SEVERE: Missing dependency for method public void com.restaurant.FoodResource.add(com.restaurant.User, com.restaurant.Food) at parameter at index 0 SEVERE: Missing dependency for method public void com.restaurant.FoodResource.add(com.restaurant.User, com.restaurant.Food) at parameter at index 1 SEVERE: Method, public void com.restaurant.FoodResource.add(com.restaurant.User, com.restaurant.Food), annotated with POST of resource, class com.restaurant.FoodResource, is not recognized as valid resource method.



我发现根据规范(3.3.2.1实体参数) http://jsr311.java.net/nonav/releases/1.1/spec/spec3.html,不可能有两个参数没有用某些注释进行注释

有什么选择仍然可以做这样的事情?我想到的是一个封装用户和食物的对象,但这对我来说似乎不是一个好的解决方案。

有没有其他更优雅的方式来做这样的事情?我可以将 JSON Food 表示作为@PathParam 发送吗?

最佳答案

我遇到了同样的问题。
事实上,这是由于我的测试配置中缺少提供者。

在 setUpResources() 方法中的资源单元测试中,使用方法 addProvider() 设置您的身份验证提供程序。

例如:

addProvider(new BasicAuthProvider(<Authenticator>, <CacheBuilderSpec>));

关于json - Dropwizard/泽西 : Authentication and JSON parameter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10691724/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com