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; }