服务间的Http请求,可以用apache的HttpClient,OkHttp,这些都是需要我们手动回收资源,使用起来如果实在spring框架中,则有更优的选择,即:RestTemplate来实现服务间的通讯调用。
RestTemplate提供了常见的post,get等请求。下面是利用RestTemplate来封装Http请求工具类。
代码部分:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import javax.annotation.Resource;
import java.util.Map;
@Service
public class RestTemplateService {
private final static Logger LOGGER = LoggerFactory.getLogger(RestTemplateService .class);
@Resource
public RestTemplate restTemplate;
/**
* @Description Post方式调用外部接口
* @param serverUrl-接口地址
* @param param-json格式的接口入参
*/
@Override
public String restTemplatePost(String serverUrl, String param) {
try {
LOGGER.info("调用第三方接口serverUrl={},param={}", serverUrl, param);