【问题标题】:Add header param with Resteasy client使用 Resteasy 客户端添加标头参数
【发布时间】:2017-10-27 11:15:41
【问题描述】:

我使用 Resteasy 回电

所以我使用一个接口来配置我的调用

@Path("/api/private/configuracao")
public interface ConfiguracaoClient {
    @GET
    @Path("/")
    @Consumes("application/json")
    @HeaderParam(value = "db_teste")
    public ConfiguracaoVO findConfiguracao();
}

并像这样调用:

public class ConfiguracaoClientImpl {
    ResteasyClient client;
    ConfiguracaoClient configuracaoClient;
    public ConfiguracaoClientImpl() {
        client = new ResteasyClientBuilder().build();
        ResteasyWebTarget target = client.target("http://localhost:8181/");
        target.request().header("public","db_teste");
        configuracaoClient = target.proxy(ConfiguracaoClient.class);

    }

    public ConfiguracaoVO findConfiguracao(){
        return configuracaoClient.findConfiguracao();
    }
}

如何在标题中添加参数? tks

【问题讨论】:

    标签: resteasy


    【解决方案1】:

    db_teste 应该是查询参数而不是标题参数。正确的语法如下:

    @Path("/api/private/configuracao")
    public interface ConfiguracaoClient {
        @GET
        @Path("/")
        @Consumes("application/json")
        public ConfiguracaoVO findConfiguracao(@QueryParam("db_teste") String dbTest);
    }
    

    ConfiguracaoClientImpl中删除这一行:

    target.request().header("public","db_teste");
    

    您可以在configuracaoClient.findConfiguracao(value) 调用中添加db_teste 的值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-23
      • 1970-01-01
      • 1970-01-01
      • 2011-10-19
      • 1970-01-01
      • 1970-01-01
      • 2017-08-20
      相关资源
      最近更新 更多