进行多个休息客户端调用

Making multiple rest client calls

我正在尝试使用 org.apache.wink.client.RestClient 对具有基本身份验证的服务进行多个客户端调用。

第一个 PUT 我得到 200 的状态代码,但随后我得到一个连接超时。

每次我要创建新的看跌期权时,我都尝试重新创建客户端。

这是我的代码:

for (int pos = 0; pos < jsonsToSend.size(); pos++) {
        BasicAuthSecurityHandler secHandler = new BasicAuthSecurityHandler();
        ClientConfig config = new ClientConfig();
        secHandler.setUserName(username);
        secHandler.setPassword(password);
        config.handlers(secHandler);

        RestClient client = new RestClient(config);
        Resource resource = client.resource(url);

        actualJson = JSONObject.parse(jsonsToSend.get(pos).toString());
        response = putJson(actualJson, resource);
    }

这是putJson方法:

private ClientResponse putJson(JSONObject jsonSend, Resource resource) throws Exception {
    try {
        ClientResponse response = resource.contentType("text/plain; charset=utf-8").accept("*/*").put(jsonSend.toString());
        return response;
    } catch (Exception e) {
        throw e;
    }
}

你知道如何拨打多个休息电话吗?

是的,你可以。这是我的做法: 服务层: ... //第一 ResponseEntity> firstResponse = firstClient.createEntity(requestPayload1);

//第二个 ResponseEntity> secondResponse = secondClient.createEntity(requestPayload2);

两者都可以传递相同的 requestPayload 对象。

因此,您需要有两个客户端(如果您不想每次都动态更改构建器)

我假设您已经知道如何创建客户端。就我而言,我使用 restTemplate.getUriTemplateHandler() 创建 URI,然后使用 RequestEntity 和 ParameterizedTypeReference 进行交换。

如果你不做任何交易工作,我认为像我一样按顺序打电话就可以了。