HttpClient simular http pedido

introduzindo POM dependente

 

<Dependency>
            <GroupId> org.apache.httpcomponents </ groupId>
            <ArtifactId> httpclient </ artifactId>
        </ Dependency>
        <Dependency>
            <GroupId> org.apache.httpcomponents </ groupId>
            <ArtifactId> httpmime </ artifactId>
        </ Dependency>
        <Dependency>
            <GroupId> org.apache.httpcomponents </ groupId>
            <ArtifactId> httpclient-osgi </ artifactId>
        </ Dependency>

 

ApiConsts.java

pública  de interface ApiConsts {

    int ApiTimeout = 10000 ;
    Codificação ApiCharset = Charset.defaultCharset ();
    Corda ApiCharsetName = ApiCharset.name ();
    Corda DateTimeFormat = "aaaa-MM-dd HH: mm: ss" ;

}

HttpUtils.java

importação org.apache.http.Header;
importação org.apache.http.client.ClientProtocolException;
importação org.apache.http.client.fluent.Request;
importação org.apache.http.entity.StringEntity;
importação org.apache.http.message.BasicHeader;
importação org.springframework.stereotype.Component;
/ **
 * 
 * @Author Wanjun
 *
 * /
@Componente
público  classe HttpUtils {

    private  static Header [] DefaultJSONHeader = new Header [] {
             nova BasicHeader ( "Content-Type", "application / json; charset =" + ApiConsts.ApiCharsetName)};

    private  static Header [] getDefaultJSONHeaderWithCookie (String cookcie) {
         retornar DefaultJSONHeader = new Header [] {
                 nova BasicHeader ( "Content-Type", "application / json; charset =" + ApiConsts.ApiCharsetName),
                 nova BasicHeader ( "Cookie" , cookcie )};
    };

    pública de Cordas doPost (String apiUrl, String requestBody, biscoito String) throws Exception {
         try {
             int timeout = ApiConsts.ApiTimeout;
            System.out.println ( "=============== [HTTP POST] ================" );
            System.out.println ( "URL:" + apiUrl + "timeout:" + tempo limite + "ms" );
            System.out.println ( "Request físico:" + requestBody);
            Corda resposta = Request.Post (apiUrl) .socketTimeout (timeout) .connectTimeout (timeout)
                    .body ( novo StringEntity (requestBody, ApiConsts.ApiCharset))
                    .setHeaders (getDefaultJSONHeaderWithCookie (cookie)). execute (). returnContent ()
                    .asString (ApiConsts.ApiCharset);

            System.out.println ( "Body Resposta:" + resposta + "\ n" );
            retornar resposta;
        } Captura (ClientProtocolException e) {
            e.printStackTrace ();
        }
        voltar requestBody;
    }

    pública de Cordas doGet (String apiUrl) lança Exceção {
         try {
             int timeout = ApiConsts.ApiTimeout;
            System.out.println ( "=============== [HTTP GET] ================" );
            System.out.println ( "URL:" + apiUrl + "timeout:" + tempo limite + "ms" );

            Corda resposta = request.GET (apiUrl) .socketTimeout (timeout) .connectTimeout (timeout) .Execute (). ReturnContent ()
                    .asString (ApiConsts.ApiCharset);

            System.out.println ( "Body Resposta:" + resposta + "\ n" );
            retornar resposta;

        } Captura (ClientProtocolException e) {
            e.printStackTrace ();
        }
        voltar apiUrl;
    }

}

teste:

@RequestMapping ( "/ getMoney" )
     pública de Cordas memberWithdrawal (String userName, String pwd, String dinheiro) lança Exceção {
        UserInfo userInfo = userInfoMapper.queryUserInfoByUserName (nome de utilizador);
        RequestParamBean param = newRequestParamBean (); 
        // param.set ()
         // param.set () 
     cadeia de resposta = httpUtils.doPost ( "url", JSON.toJSONString (getMoney), userInfo.getCookie ()); regresso resposta; }       

 

Acho que você gosta

Origin www.cnblogs.com/wanjun-top/p/12625798.html
Recomendado
Clasificación