apache httpclient post 请求url

使用httpclient请求url 使用post 方式、

httpclient 很多包,且很多过时的,所以需要注意时

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.methods.StringRequestEntity;

依赖
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.1</version>
</dependency>
    public String requestUrl(String param) throws Exception {
        //1,创建一个httpClient对象
        HttpClient httpClient = new HttpClient();
        PostMethod postMethod = new PostMethod(dzUrl);

        postMethod.addRequestHeader("accept", "*/*");
        postMethod.addRequestHeader("connection", "Keep-Alive");
        //设置json格式传送
        postMethod.addRequestHeader("Content-Type", "application/json");
        //必须设置下面这个Header
        postMethod.addRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36");
        String res = "";
        try {
            //json格式的参数解析
            RequestEntity entity = new StringRequestEntity(param, "application/json", "UTF-8");
            postMethod.setRequestEntity(entity);
            int code = httpClient.executeMethod(postMethod);
            if (code == 200){
                res = postMethod.getResponseBodyAsString();
            }else{
                throw new Exception("请求接口状态:"+code);
            }
        } catch (Exception e) {
            throw new Exception("请求接口失败:"+e.getMessage());

        }
        return res;
    }

 

posted @ 2021-08-19 10:26  幻樱落日剑  阅读(400)  评论(0)    收藏  举报