<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    少年阿賓

    那些青春的歲月

      BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
      500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks

    邏輯:

    String url = "http://www.baidu.com";

    //將要訪問(wèn)的url字符串放入HttpPost中

    HttpPost httpPost = new HttpPost(url);

    //請(qǐng)求頭 放置一些修改http請(qǐng)求頭和cookie

    httpPost.setHeader("Accept", "application/json");

    ......

    //如果是HttpPost或者HttpPut請(qǐng)求需要在請(qǐng)求里加參數(shù),而HttpGet或者HttpDelete請(qǐng)求則可以直接拼接到url字符串后面

    //向HttpPost中加入?yún)?shù)

    List<NameValuePair> values = new ArrayList<NameValuePair>();

    values.add(new NameValuePair("id", "1"));

    values.add(new NameValuePair("name", "xiaohong"));

    httpPost.setEntity(new UrlEncodeFormEntity(values, HTTP.UTF_8));  //進(jìn)行轉(zhuǎn)碼

     

    //實(shí)例HttpClient 并執(zhí)行帶有HttpPost的方法,返回HttpResponse 響應(yīng),再進(jìn)行操作

    HttpClient httpClient = new DefaultHttpClient();

    HttpResponse httpResponse = httpClient.execute(httpPost);

    int statusCode = httpResponse.getStatusLine().getStatusCode();  //返回狀態(tài)碼 ,用來(lái)進(jìn)行識(shí)別或者判斷訪問(wèn)結(jié)果

    if(statusCode == 200){

      Instream in = httpResponse.getEntity().getContent();  //要處理該數(shù)據(jù)流是否為GZIP流

    }

     

     

    示例代碼如下:

    package cn.dratek.haoyingsheng.manager.client;

    import cn.dratek.haoyingsheng.manager.util.ResourceUtil;
    import net.dratek.browser.http.Cookie;
    import net.dratek.browser.http.CookieManager;
    import net.dratek.browser.http.URL;
    import org.apache.http.*;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpDelete;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.client.methods.HttpPut;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.protocol.HTTP;

    import java.io.IOException;
    import java.io.InputStream;
    import java.io.UnsupportedEncodingException;
    import java.util.List;


    public class HttpNetClient {
    /**
    * 所有g(shù)et 請(qǐng)求底層調(diào)用方法
    *
    * @param url 請(qǐng)求url
    * @return byte[] response data
    */
    public static byte[] doGet(String url) {
    InputStream in;
    byte[] bre = null;
    HttpResponse response;
    CookieManager manager = CookieManager.getInstance();
    if (url != null && url.length() != 0) {
    URL myURL = URL.parseString(url);
    Cookie[] cookies = manager.getCookies(myURL);
    HttpGet httpGet = new HttpGet(url);
    if (cookies != null && cookies.length > 0) {
    StringBuilder sb = new StringBuilder();
    for (Cookie ck : cookies) {
    sb.append(ck.name).append('=').append(ck.value).append(";");
    }
    String sck = sb.toString();
    if (sck.length() > 0) {
    httpGet.setHeader("Cookie", sck);
    }

    }
    httpGet.setHeader("Accept-Encoding", "gzip, deflate");
    httpGet.setHeader("Accept-Language", "zh-CN");
    httpGet.setHeader("Accept", "application/json, application/xml, text/html, text/*, image/*, */*");
    try {
    response = new DefaultHttpClient().execute(httpGet);
    if (response != null) {
    int statusCode = response.getStatusLine().getStatusCode();
    if (statusCode == 200 || statusCode == 403) {
    Header[] headers = response.getHeaders("Set-Cookie");
    if (headers != null && headers.length > 0) {
    for (Header header : headers) {
    manager.setCookie(myURL, header.getValue());
    }
    }
    in = response.getEntity().getContent();
    if (in != null) {
    bre = ResourceUtil.readStream(in);
    }

    }
    }


    } catch (IOException e) {
    e.printStackTrace();
    }
    }


    return bre;

    }

    /**
    * 所有Post 請(qǐng)求底層調(diào)用方法
    *
    * @param url 請(qǐng)求url
    * @param values 傳遞的參數(shù)
    * @return byte[] 返回?cái)?shù)據(jù) or null
    */
    public static byte[] doPost(String url, List<NameValuePair> values) {
    System.out.println("url = " + url);
    byte[] bytes = null;
    HttpResponse response;
    InputStream inputStream = null;
    CookieManager manager = CookieManager.getInstance();
    if (url != null && url.length() != 0) {
    URL myurl = URL.parseString(url);
    Cookie[] cookies = manager.getCookies(myurl);
    HttpPost post = new HttpPost(url);
    if (cookies != null && cookies.length > 0) {
    StringBuilder sb = new StringBuilder();
    for (Cookie ck : cookies) {
    sb.append(ck.name).append('=').append(ck.value).append(";");
    }
    String sck = sb.toString();
    if (sck.length() > 0) {
    post.setHeader("Cookie", sck);
    }

    }
    post.setHeader("Accept-Encoding", "gzip, deflate");
    post.setHeader("Accept-Language", "zh-CN");
    post.setHeader("Accept", "application/json, application/xml, text/html, text/*, image/*, */*");
    DefaultHttpClient client = new DefaultHttpClient();
    try {
    if (values != null && values.size() > 0) {
    post.setEntity(new UrlEncodedFormEntity(values, HTTP.UTF_8));
    }
    response = client.execute(post);
    if (response != null) {
    int statusCode = response.getStatusLine().getStatusCode();
    if (statusCode == 200 || statusCode == 403) {
    Header[] headers = response.getHeaders("Set-Cookie");
    if (headers != null && headers.length > 0) {
    for (Header header : headers) {
    manager.setCookie(myurl, header.getValue());
    }
    }
    inputStream = response.getEntity().getContent();
    }
    }

    } catch (UnsupportedEncodingException e) {
    e.printStackTrace();
    } catch (IOException e) {
    e.printStackTrace();
    }
    if (inputStream != null) {
    bytes = ResourceUtil.readStream(inputStream);
    }
    }
    return bytes;
    }

    /**
    * PUT基礎(chǔ)請(qǐng)求
    *
    * @param url 請(qǐng)求地址
    * @param values 提交參數(shù)
    * @return byte[] 請(qǐng)求成功后的結(jié)果
    */
    public static byte[] doPut(String url, List<NameValuePair> values) {
    byte[] ret = null;

    CookieManager manager = CookieManager.getInstance();
    if (url != null && url.length() > 0) {
    URL myUrl = URL.parseString(url);
    StringBuilder sb = new StringBuilder();
    Cookie[] cookies = manager.getCookies(myUrl);
    if (cookies != null && cookies.length > 0) {
    for (Cookie cookie : cookies) {
    sb.append(cookie.name).append("=").append(cookie.value).append(";");
    }

    }
    HttpPut request = new HttpPut(url);
    String sck = sb.toString();
    if (sck.length() > 0) {
    request.setHeader("Cookie", sck);
    }
    request.setHeader("Accept-Encoding", "gzip, deflate");
    request.setHeader("Accept-Language", "zh-CN");
    request.setHeader("Accept", "application/json, application/xml, text/html, text/*, image/*, */*");

    DefaultHttpClient client = new DefaultHttpClient();
    if (values != null && values.size() > 0) {
    try {
    UrlEncodedFormEntity entity;
    entity = new UrlEncodedFormEntity(values);
    request.setEntity(entity);
    } catch (UnsupportedEncodingException e) {
    e.printStackTrace();
    }
    }
    try {
    HttpResponse response = client.execute(request);
    if (response != null) {
    StatusLine statusLine = response.getStatusLine();
    int statusCode = statusLine.getStatusCode();
    if (statusCode == 200 || statusCode == 403) {
    Header[] headers = response.getHeaders("Set-Cookie");
    if (headers != null && headers.length > 0) {
    for (Header header : headers) {
    manager.setCookie(myUrl, header.getValue());
    }
    }
    HttpEntity entity = response.getEntity();
    InputStream inputStream = entity.getContent();
    if (inputStream != null) {
    ret = ResourceUtil.readStream(inputStream);
    inputStream.close();
    }
    }
    }
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
    return ret;
    }

    /**
    * Delete基礎(chǔ)請(qǐng)求
    *
    * @param url 請(qǐng)求地址
    * @return 請(qǐng)求成功后的結(jié)果
    */
    public static byte[] doDelete(String url) {

    InputStream in;
    byte[] bre = null;
    HttpResponse response;
    CookieManager manager = CookieManager.getInstance();
    if (url != null && url.length() != 0) {
    URL myurl = URL.parseString(url);
    Cookie[] cookies = manager.getCookies(myurl);
    HttpDelete delete = new HttpDelete(url);
    if (cookies != null && cookies.length > 0) {
    StringBuilder sb = new StringBuilder();
    for (Cookie ck : cookies) {
    sb.append(ck.name).append('=').append(ck.value).append(";");
    }
    String sck = sb.toString();
    if (sck.length() > 0) {
    delete.setHeader("Cookie", sck);
    }

    }
    delete.setHeader("Accept-Encoding", "gzip, deflate");
    delete.setHeader("Accept-Language", "zh-CN");
    delete.setHeader("Accept", "application/json, application/xml, text/html, text/*, image/*, */*");
    try {
    response = new DefaultHttpClient().execute(delete);
    if (response != null) {
    int statusCode = response.getStatusLine().getStatusCode();
    if (statusCode == 200 || statusCode == 403) {
    Header[] headers = response.getHeaders("Set-Cookie");
    if (headers != null && headers.length > 0) {
    for (Header header : headers) {
    manager.setCookie(myurl, header.getValue());
    }
    }
    in = response.getEntity().getContent();
    if (in != null) {
    bre = ResourceUtil.readStream(in);
    }

    }
    }


    } catch (IOException e) {
    e.printStackTrace();
    }
    }


    return bre;
    }

     

    }










    http://www.cnblogs.com/lianghui66/archive/2013/03/06/2946495.html

    posted on 2013-04-19 23:39 abin 閱讀(1608) 評(píng)論(0)  編輯  收藏 所屬分類: httpClient
    主站蜘蛛池模板: 亚洲中文字幕精品久久| 日本亚洲视频在线| 国产成人亚洲综合一区| 亚洲精品在线免费观看| 亚洲网址在线观看你懂的| 男女作爱在线播放免费网站| 亚洲色精品88色婷婷七月丁香| 含羞草国产亚洲精品岁国产精品| 欧美男同gv免费网站观看| 亚洲中文字幕一二三四区苍井空 | 亚洲国产91精品无码专区| 老牛精品亚洲成av人片| 亚洲AV无码之日韩精品| a免费毛片在线播放| 国产av天堂亚洲国产av天堂| 久久er国产精品免费观看2| 久久久久亚洲AV成人无码网站| 色欲国产麻豆一精品一AV一免费| 亚洲黄色片在线观看| 青春禁区视频在线观看直播免费| 亚洲熟女乱色一区二区三区| 国产一级理论免费版| 中文字幕看片在线a免费| 亚洲国产香蕉碰碰人人| 91香蕉视频免费| 国产精品亚洲色婷婷99久久精品| 日批日出水久久亚洲精品tv| 久久国产精品免费| 久久久亚洲裙底偷窥综合| 免费理论片51人人看电影| www在线观看免费视频| 久久精品国产亚洲AV麻豆网站 | 色窝窝亚洲AV网在线观看| 亚洲色大成网站WWW久久九九 | 久久99亚洲综合精品首页| 亚洲国产精品免费视频| 亚洲日韩中文字幕一区| 国产成人亚洲精品狼色在线| 国产在线jyzzjyzz免费麻豆| 理论片在线观看免费| 亚洲欧洲精品久久|