HttpRequestUtils post get请求

  1 package com.nextjoy.projects.usercenter.util.http; /**
  2  * Created by Administrator on 2016/10/20.
  3  */
  4 import org.apache.http.HttpResponse;
  5 import org.apache.http.client.methods.HttpGet;
  6 import org.apache.http.client.methods.HttpPost;
  7 import org.apache.http.entity.StringEntity;
  8 import org.apache.http.impl.client.DefaultHttpClient;
  9 import org.apache.http.params.CoreConnectionPNames;
 10 import org.apache.http.util.EntityUtils;
 11 
 12 import java.io.IOException;
 13 import java.net.URLDecoder;
 14 
 15 public class HttpRequestUtils {
 16     /**
 17      * httpPost
 18      * @param url  路径
 19      * @param jsonParam 参数
 20      * @return
 21      */
 22     public static String httpPost(String url, String jsonParam){
 23         return httpPost(url, jsonParam, false);
 24     }
 25 
 26     /**
 27      * post请求
 28      * @param url         url地址
 29      * @param jsonParam     参数
 30      * @param noNeedResponse    不需要返回结果
 31      * @return
 32      */
 33     public static String httpPost(String url, String jsonParam, boolean noNeedResponse){
 34         //post请求返回结果
 35         DefaultHttpClient httpClient = new DefaultHttpClient();
 36         String res = "";
 37         HttpPost method = new HttpPost(url);
 38         try {
 39             httpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 50000);
 40             httpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 50000);
 41             if (null != jsonParam) {
 42                 //解决中文乱码问题
 43                 StringEntity entity = new StringEntity(jsonParam.toString(), "utf-8");
 44                 entity.setContentEncoding("UTF-8");
 45                 entity.setContentType("application/json");
 46                 method.setEntity(entity);
 47             }
 48             HttpResponse result = httpClient.execute(method);
 49             url = URLDecoder.decode(url, "UTF-8");
 50             /**请求发送成功,并得到响应**/
 51             if (result.getStatusLine().getStatusCode() == 200) {
 52                 try {
 53                     /**读取服务器返回过来的json字符串数据**/
 54                     res = EntityUtils.toString(result.getEntity());
 55                     if (noNeedResponse) {
 56                         return null;
 57                     }
 58                 } catch (Exception e) {
 59                     System.out.println("post请求响应失败:" + url);
 60                 }
 61             }
 62         } catch (IOException e) {
 63             System.out.println("post请求提交失败:" + url);
 64         }
 65         return res;
 66     }
 67 
 68 
 69     /**
 70      * 发送get请求
 71      * @param url    路径
 72      * @return
 73      */
 74     public static String httpGet(String url){
 75         //get请求返回结果
 76         String res = "";
 77         try {
 78             DefaultHttpClient client = new DefaultHttpClient();
 79             client.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 50000);
 80             client.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 50000);
 81             //发送get请求
 82             HttpGet request = new HttpGet(url);
 83             HttpResponse response = client.execute(request);
 84 
 85             /**请求发送成功,并得到响应**/
 86             if (response.getStatusLine().getStatusCode() == 200) {
 87                 /**读取服务器返回过来的json字符串数据**/
 88                 res = EntityUtils.toString(response.getEntity());
 89                 url = URLDecoder.decode(url, "UTF-8");
 90             } else {
 91                 System.out.println("post请求提交失败:" + url);
 92             }
 93         } catch (IOException e) {
 94             System.out.println("post请求提交失败:" + url);
 95         }
 96         return res;
 97     }
 98 
 99     public static void main(String[] args) {
100         String str = "{\"receipt-data\":\"MIITygYJKoZIhvcNAQcCoIITuzCCE7cCAQExCzAJBgUrDgMCGgUAMIIDawYJKoZIhvcNAQcBoIIDXASCA1gxggNUMAoCAQgCAQEEAhYAMAoCARQCAQEEAgwAMAsCAQECAQEEAwIBADALAgEDAgEBBAMMATEwCwIBCwIBAQQDAgEAMAsCAQ4CAQEEAwIBeDALAgEPAgEBBAMCAQAwCwIBEAIBAQQDAgEAMAsCARkCAQEEAwIBAzAMAgEKAgEBBAQWAjQrMA0CAQ0CAQEEBQIDAa2yMA0CARMCAQEEBQwDMS4wMA4CAQkCAQEEBgIEUDI1MDAYAgEEAgECBBATuifw5XP6GoZIgBahDxWaMBsCAQACAQEEEwwRUHJvZHVjdGlvblNhbmRib3gwHAIBBQIBAQQUstsB Xk3UbkwRJ3bu9Z/okz749kwHgIBDAIBAQQWFhQyMDE4LTA0LTE5VDA4OjU5OjU4WjAeAgESAgEBBBYWFDIwMTMtMDgtMDFUMDc6MDA6MDBaMCACAQICAQEEGAwWam95Lk5leHRqb3lTREtEZW1vLmNvbTA9AgEHAgEBBDXidk/VrGzS8WSU1J0BDdgvRsqRp NrmWJCqzIiTczAUdadruCsIP6aH9wBRxaKXzzpwtcS zBYAgEGAgEBBFA8U1hKBsHQwUWPSU0ukesf8UF/BzYQ3bwsTslxhrNJQ9D94gIhanzhyf5QMBn/JnaWbvR hP6 4p3xcZ0XBWjawPBtq2s6ODN8ZzicKe/ctTCCAVECARECAQEEggFHMYIBQzALAgIGrAIBAQQCFgAwCwICBq0CAQEEAgwAMAsCAgawAgEBBAIWADALAgIGsgIBAQQCDAAwCwICBrMCAQEEAgwAMAsCAga0AgEBBAIMADALAgIGtQIBAQQCDAAwCwICBrYCAQEEAgwAMAwCAgalAgEBBAMCAQEwDAICBqsCAQEEAwIBATAMAgIGrgIBAQQDAgEAMAwCAgavAgEBBAMCAQAwDAICBrECAQEEAwIBADAXAgIGpgIBAQQODAxuZXh0Sm95UHJvZDEwGwICBqcCAQEEEgwQMTAwMDAwMDM5MTg1Mzk4MTAbAgIGqQIBAQQSDBAxMDAwMDAwMzkxODUzOTgxMB8CAgaoAgEBBBYWFDIwMTgtMDQtMTlUMDg6NTk6NThaMB8CAgaqAgEBBBYWFDIwMTgtMDQtMTlUMDg6NTk6NThaoIIOZTCCBXwwggRkoAMCAQICCA7rV4fnngmNMA0GCSqGSIb3DQEBBQUAMIGWMQswCQYDVQQGEwJVUzETMBEGA1UECgwKQXBwbGUgSW5jLjEsMCoGA1UECwwjQXBwbGUgV29ybGR3aWRlIERldmVsb3BlciBSZWxhdGlvbnMxRDBCBgNVBAMMO0FwcGxlIFdvcmxkd2lkZSBEZXZlbG9wZXIgUmVsYXRpb25zIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTE1MTExMzAyMTUwOVoXDTIzMDIwNzIxNDg0N1owgYkxNzA1BgNVBAMMLk1hYyBBcHAgU3RvcmUgYW5kIGlUdW5lcyBTdG9yZSBSZWNlaXB0IFNpZ25pbmcxLDAqBgNVBAsMI0FwcGxlIFdvcmxkd2lkZSBEZXZlbG9wZXIgUmVsYXRpb25zMRMwEQYDVQQKDApBcHBsZSBJbmMuMQswCQYDVQQGEwJVUzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKXPgf0looFb1oftI9ozHI7iI8ClxCbLPcaf7EoNVYb/pALXl8o5VG19f7JUGJ3ELFJxjmR7gs6JuknWCOW0iHHPP1tGLsbEHbgDqViiBD4heNXbt9COEo2DTFsqaDeTwvK9HsTSoQxKWFKrEuPt3R YFZA1LcLMEsqNSIH3WHhUa iMMTYfSgYMR1TzN5C4spKJfV khUrhwJzguqS7gpdj9CuTwf0 b8rB9Typj1IawCUKdg7e/pn /8Jr9VterHNRSQhWicxDkMyOgQLQoJe2XLGhaWmHkBBoJiY5uB0Qc7AKXcVz0N92O9gt2Yge4 wHz KO0NP6JlWB7 IDSSMCAwEAAaOCAdcwggHTMD8GCCsGAQUFBwEBBDMwMTAvBggrBgEFBQcwAYYjaHR0cDovL29jc3AuYXBwbGUuY29tL29jc3AwMy13d2RyMDQwHQYDVR0OBBYEFJGknPzEdrefoIr0TfWPNl3tKwSFMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUiCcXCam2GGCL7Ou69kdZxVJUo7cwggEeBgNVHSAEggEVMIIBETCCAQ0GCiqGSIb3Y2QFBgEwgf4wgcMGCCsGAQUFBwICMIG2DIGzUmVsaWFuY2Ugb24gdGhpcyBjZXJ0aWZpY2F0ZSBieSBhbnkgcGFydHkgYXNzdW1lcyBhY2NlcHRhbmNlIG9mIHRoZSB0aGVuIGFwcGxpY2FibGUgc3RhbmRhcmQgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdXNlLCBjZXJ0aWZpY2F0ZSBwb2xpY3kgYW5kIGNlcnRpZmljYXRpb24gcHJhY3RpY2Ugc3RhdGVtZW50cy4wNgYIKwYBBQUHAgEWKmh0dHA6Ly93d3cuYXBwbGUuY29tL2NlcnRpZmljYXRlYXV0aG9yaXR5LzAOBgNVHQ8BAf8EBAMCB4AwEAYKKoZIhvdjZAYLAQQCBQAwDQYJKoZIhvcNAQEFBQADggEBAA2mG9MuPeNbKwduQpZs0 iMQzCCX Bc0Y2 vQ 9GvwlktuMhcOAWd/j4tcuBRSsDdu2uP78NS58y60Xa45/H R3ubFnlbQTXqYZhnb4WiCV52OMD3P86O3GH66Z GVIXKDgKDrAEDctuaAEOR9zucgF/fLefxoqKm4rAfygIFzZ630npjP49ZjgvkTbsUxn/G4KT8niBqjSl/OnjmtRolqEdWXRFgRi48Ff9Qipz2jZkgDJwYyz I0AZLpYYMB8r491ymm5WyrWHWhumEL1TKc3GZvMOxx6GUPzo22/SGAGDDaSK zeGLUR2i0j0I78oGmcFxuegHs5R0UwYS/HE6gwggQiMIIDCqADAgECAggB3rzEOW2gEDANBgkqhkiG9w0BAQUFADBiMQswCQYDVQQGEwJVUzETMBEGA1UEChMKQXBwbGUgSW5jLjEmMCQGA1UECxMdQXBwbGUgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxFjAUBgNVBAMTDUFwcGxlIFJvb3QgQ0EwHhcNMTMwMjA3MjE0ODQ3WhcNMjMwMjA3MjE0ODQ3WjCBljELMAkGA1UEBhMCVVMxEzARBgNVBAoMCkFwcGxlIEluYy4xLDAqBgNVBAsMI0FwcGxlIFdvcmxkd2lkZSBEZXZlbG9wZXIgUmVsYXRpb25zMUQwQgYDVQQDDDtBcHBsZSBXb3JsZHdpZGUgRGV2ZWxvcGVyIFJlbGF0aW9ucyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMo4VKbLVqrIJDlI6Yzu7F 4fyaRvDRTes58Y4Bhd2RepQcjtjn UC0VVlhwLX7EbsFKhT4v8N6EGqFXya97GP9q hUSSRUIGayq2yoy7ZZjaFIVPYyK7L9rGJXgA6wBfZcFZ84OhZU3au0Jtq5nzVFkn8Zc0bxXbmc1gHY2pIeBbjiP2CsVTnsl2Fq/ToPBjdKT1RpxtWCcnTNOVfkSWAyGuBYNweV3RY1QSLorLeSUheHoxJ3GaKWwo/xnfnC6AllLd0KRObn1zeFM78A7SIym5SFd/Wpqu6cWNWDS5q3zRinJ6MOL6XnAamFnFbLw/eVovGJfbs Z3e8bY/6SZasCAwEAAaOBpjCBozAdBgNVHQ4EFgQUiCcXCam2GGCL7Ou69kdZxVJUo7cwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBQr0GlHlHYJ/vRrjS5ApvdHTX8IXjAuBgNVHR8EJzAlMCOgIaAfhh1odHRwOi8vY3JsLmFwcGxlLmNvbS9yb290LmNybDAOBgNVHQ8BAf8EBAMCAYYwEAYKKoZIhvdjZAYCAQQCBQAwDQYJKoZIhvcNAQEFBQADggEBAE/P71m LPWybC P7hOHMugFNahui33JaQy52Re8dyzUZ L9mm06WVzfgwG9sq4qYXKxr83DRTCPo4MNzh1HtPGTiqN0m6TDmHKHOz6vRQuSVLkyu5AYU2sKThC22R1QbCGAColOV4xrWzw9pv3e9w0jHQtKJoc/upGSTKQZEhltV/V6WId7aIrkhoxK6 JJFKql3VUAqa67SzCu4aCxvCmA5gl35b40ogHKf9ziCuY7uLvsumKV8wVjQYLNDzsdTJWk26v5yZXpT RN5yaZgem8 bQp0gF6ZuEujPYhisX4eOGBrr/TkJ2prfOv/TgalmcwHFGlXOxxioK0bA8MFR8wggS7MIIDo6ADAgECAgECMA0GCSqGSIb3DQEBBQUAMGIxCzAJBgNVBAYTAlVTMRMwEQYDVQQKEwpBcHBsZSBJbmMuMSYwJAYDVQQLEx1BcHBsZSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEWMBQGA1UEAxMNQXBwbGUgUm9vdCBDQTAeFw0wNjA0MjUyMTQwMzZaFw0zNTAyMDkyMTQwMzZaMGIxCzAJBgNVBAYTAlVTMRMwEQYDVQQKEwpBcHBsZSBJbmMuMSYwJAYDVQQLEx1BcHBsZSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEWMBQGA1UEAxMNQXBwbGUgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOSRqQkfkdseR1DrBe1eeYQt6zaiV0xV7IsZid75S2z1B6siMALoGD74UAnTf0GomPnRymacJGsR0KO75Bsqwx VnnoMpEeLW9QWNzPLxA9NzhRp0ckZcvVdDtV/X5vyJQO6VY9NXQ3xZDUjFUsVWR2zlPf2nJ7PULrBWFBnjwi0IPfLrCwgb3C2PwEwjLdDzw dPfMrSSgayP7OtbkO2V4c1ss9tTqt9A8OAJILsSEWLnTVPA3bYharo3GSR1NVwa8vQbP4  NwzeajTEV H0xrUJZBicR0YgsQg0GHM4qBsTBY7FoEMoxos48d3mVz/2deZbxJ2HafMxRloXeUyS0CAwEAAaOCAXowggF2MA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQr0GlHlHYJ/vRrjS5ApvdHTX8IXjAfBgNVHSMEGDAWgBQr0GlHlHYJ/vRrjS5ApvdHTX8IXjCCAREGA1UdIASCAQgwggEEMIIBAAYJKoZIhvdjZAUBMIHyMCoGCCsGAQUFBwIBFh5odHRwczovL3d3dy5hcHBsZS5jb20vYXBwbGVjYS8wgcMGCCsGAQUFBwICMIG2GoGzUmVsaWFuY2Ugb24gdGhpcyBjZXJ0aWZpY2F0ZSBieSBhbnkgcGFydHkgYXNzdW1lcyBhY2NlcHRhbmNlIG9mIHRoZSB0aGVuIGFwcGxpY2FibGUgc3RhbmRhcmQgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdXNlLCBjZXJ0aWZpY2F0ZSBwb2xpY3kgYW5kIGNlcnRpZmljYXRpb24gcHJhY3RpY2Ugc3RhdGVtZW50cy4wDQYJKoZIhvcNAQEFBQADggEBAFw2mUwteLftjJvc83eb8nbSdzBPwR Fg4UbmT1HN/Kpm0COLNSxkBLYvvRzm 7SZA/LeU802KI  Xj/a8gH7H05g4tTINM4xLG/mk8Ka/8r/FmnBQl8F0BWER5007eLIztHo9VvJOLr0bdw3w9F4SfK8W147ee1Fxeo3H4iNcol1dkP1mvUoiQjEfehrI9zgWDGG1sJL5Ky ERI8GA4nhX1PSZnIIozavcNgs/e66Mv VNqW2TAYzN39zoHLFbr2g8hDtq6cxlPtdk2f8GHVdmnmbkyQvvY1XGefqFStxu9k0IkEirHDx22TZxeY8hLgBdQqorV2uT80AkHN7B1dSExggHLMIIBxwIBATCBozCBljELMAkGA1UEBhMCVVMxEzARBgNVBAoMCkFwcGxlIEluYy4xLDAqBgNVBAsMI0FwcGxlIFdvcmxkd2lkZSBEZXZlbG9wZXIgUmVsYXRpb25zMUQwQgYDVQQDDDtBcHBsZSBXb3JsZHdpZGUgRGV2ZWxvcGVyIFJlbGF0aW9ucyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eQIIDutXh eeCY0wCQYFKw4DAhoFADANBgkqhkiG9w0BAQEFAASCAQBFrLcTbjO3f  MD5UrL53KS6PuIkCp/JuLkuQN5NDnFiH/KfSbjrIh00Ml c5Gqdbyivw3SnDIEvWhlvHBnr3vYdt1KJig9uqQKbd/FaphptkmSFC/dSlaTKr4OY/jxmMaEkXq2q7i9DLgGAzeS40/oB Gql3hDIBfUUp5Y827mni/PE8KTPVq8qpNgLodcVRd7GjuFu7ABm8M4Ww6cZoTXOg0IvWH1bRQEjMULjFqxHket6jJeYzokjbDk29cbS43IelUUot7Q04q sTIig9ur3bmUUA4mi0sKcnyQO7a4Ul1HE0lMz6TJ THPElkeX1OOG1SeDFPABa10bpn80B5\"}";
101         String url = "https://sandbox.itunes.apple.com/verifyReceipt";
102         String result = HttpRequestUtils.httpPost(url, str);
103         System.out.println(result);
104     }
105 }

注:需要httpclient.jar依赖包(这里是版本4.3以上)

猜你喜欢

转载自www.cnblogs.com/lxn0216/p/9262871.html