亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? httputil.java

?? < JavaME核心技術最佳實踐>>的全部源代碼
?? JAVA
字號:
package com.j2medev.httpme;

import com.j2medev.httpme.cookie.Cookie;
import com.j2medev.httpme.cookie.CookieManager;
import com.j2medev.httpme.tools.URLEncoder;
import com.j2medev.httpme.view.FormUtil;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
import javax.microedition.lcdui.Form;

/**
 * HttpUtil is the core of the httpme framework,It provides three methods to send data to web server.
 *
 * @author mingjava
 * @version 0.1 05/06/2006
 * @since httpme 0.1
 */
public abstract class HttpUtil{
    
    private String host = "";
    private CookieManager cm = new CookieManager();
    public static final String BOUNDARY = "----------------dfjksdfjkdjf88982kjdf";
    public static final String APPLICATION_X_WWW_FORM_URLENCODED = "application/x-www-form-urlencoded";
    public static final String MULTIPART_FORM_DATA = "multipart/form-data";
    public static final String SET_COOKIE = "set-cookie";
    public static final String COOKIE = "cookie";
    
    
    /**
     *Initializes a HttpUtil instance so that you can use it to submit the form
     *@param host a String such as http://www.j2medev.com
     */
    public HttpUtil(String host) {
        this.host = host;
    }
    
    /**
     * send the data to the web server,This will use GET method.and the data will be encoded in the url.
     * for example /webapp/post?hello=world
     * @param uri the uri of the request
     * @param params a String array ,the parameter's name
     * @param values a String array ,the parameter's value
     */
    public void get(final String uri,final String[] params,final String[] values){
        new Thread(){
            public void run(){
                HttpConnection conn = null;
                try {
                    StringBuffer parameter = new StringBuffer();
                    for(int i = 0;i<params.length;i++){
                        parameter.append(params[i]+"="+URLEncoder.encode(values[i],"utf-8")+"&");
                    }
                    conn = (HttpConnection)Connector.open(host+uri);
                    conn.setRequestMethod(HttpConnection.GET);
                    conn.setRequestProperty("content-length",parameter.toString().length()+"");
                    String cookie = collectCookie(uri);
                    if(cookie != null)
                        conn.setRequestProperty(COOKIE,cookie);
                    int code = conn.getResponseCode();
                    if(code != HttpConnection.HTTP_OK){
                        //fix me here
                        onFailed(null,code);
                    }
                    String sCookie = conn.getHeaderField(SET_COOKIE);
                    if(sCookie != null){
                        saveCookie(sCookie,uri);
                    }
                    DataInputStream dis = conn.openDataInputStream();
                    onSuccess(conn,dis);
                    
                } catch (IOException ex) {
                    ex.printStackTrace();
                    onFailed(ex,-1);
                }
            }
        }.start();
    }
    
    /**
     * post the data contained in the form to the web server.the content type is set to application/x-www-form-urlencoded or multipart/form-data according parameter type.
     * you should note that if the length of data is more than 2106 bytes,the mobile device may be transfer the data
     * block by block.so the header content-length will be discarded.The web server should be able to handle this situation.
     * @param uri the uri of request
     * @param form the form which contained data to be submited
     * @param type the content-type either application/x-www-form-urlencoded or multipart/form-data
     */
    public void post(final String uri,final Form form,final String type) throws IllegalArgumentException{
        new Thread(){
            public void run(){
                byte[] data = null;
                HttpConnection conn = null;
                try {
                    conn = (HttpConnection)Connector.open(host+uri);
                    conn.setRequestMethod(HttpConnection.POST);
                    if(APPLICATION_X_WWW_FORM_URLENCODED.equals(type)){
                        data = FormUtil.collect(form);
                        conn.setRequestProperty("Content-type",APPLICATION_X_WWW_FORM_URLENCODED);
                    }else if(MULTIPART_FORM_DATA.equals(type)){
                        data = FormUtil.collectMultipart(form);
                        conn.setRequestProperty("Content-Type",MULTIPART_FORM_DATA+";boundary="+BOUNDARY);
                    }else{
                        throw new IllegalArgumentException("content-type header is invalid");
                    }
                    conn.setRequestProperty("Content-Length",String.valueOf(data.length));
                    String _cookie = collectCookie(uri);
                    if(_cookie != null)
                        conn.setRequestProperty(COOKIE,_cookie);
                    DataOutputStream dos = conn.openDataOutputStream();
                    dos.write(data);
                    dos.close();
                    int code = conn.getResponseCode();
                    if(code != HttpConnection.HTTP_OK){
                       onFailed(null,code);
                    }
                    String sCookie = conn.getHeaderField(SET_COOKIE);
                    if(sCookie != null){
                        saveCookie(sCookie,uri);
                    }
                    DataInputStream dis = conn.openDataInputStream();
                    onSuccess(conn,dis);
                    
                } catch (IOException ex) {
                    ex.printStackTrace();
                    onFailed(ex,-1);
                }
            }
        }.start();
    }
    
    private void saveCookie(String sCookie,String uri){
        System.out.println("receive string:"+sCookie);
        Cookie cookie = Cookie.parseCookie(sCookie,uri);
        System.out.println("receive cookie :"+cookie.toString());
        cm.addCookie(cookie);
    }
    
    private String collectCookie(String uri){
        Cookie[] cookies = cm.getCookie(uri);
        if(cookies != null){
            StringBuffer sb = new StringBuffer();
            for(int i = 0;i<cookies.length;i++){
                sb.append(cookies[i].getName()+"="+cookies[i].getValue()+";");
            }
            String c = sb.toString();
            //delete the last ;
            return c.substring(0,c.length()-1);
        }
        return null;
    }
    /**
     * the subclass of HttpUtil should implement this method when the response is returned successflly
     * @param conn the HttpConnection instance
     * @param dis the DataInputStream returned from HttpConnection.openDataInputStream();
     */
    public abstract void onSuccess(HttpConnection conn,DataInputStream dis);
    
    /**
     * the subclass of HttpUtil should implement this method when error happend
     * @param code the response code
     */
    public abstract void onFailed(Exception ex,int code);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美腿丝袜亚洲色图| 成人福利视频在线看| 成人精品在线视频观看| 欧美在线色视频| 久久精品夜色噜噜亚洲aⅴ| 亚洲最新视频在线观看| 国产精品 欧美精品| 精品视频在线视频| 欧美激情在线免费观看| 美日韩一区二区| 欧美午夜一区二区三区免费大片| 久久中文字幕电影| 午夜精品福利在线| 色综合久久88色综合天天| 国产欧美精品一区二区三区四区| 亚洲午夜成aⅴ人片| 99视频精品全部免费在线| 日韩精品一区二区三区四区视频| 亚洲国产精品嫩草影院| 日本乱人伦一区| 欧美精彩视频一区二区三区| 国产综合久久久久久鬼色| 在线成人高清不卡| 亚洲www啪成人一区二区麻豆| 91蝌蚪porny九色| 中文字幕乱码久久午夜不卡| 国产乱码精品一区二区三区忘忧草| 91精品国产综合久久精品麻豆 | 欧美图片一区二区三区| 国产精品国产精品国产专区不片| 国产高清精品网站| 国产调教视频一区| 成人免费观看av| 日本一区二区成人| 97se亚洲国产综合自在线| 国产精品不卡一区| 91麻豆成人久久精品二区三区| 中日韩av电影| 色偷偷成人一区二区三区91| 自拍av一区二区三区| 在线精品视频一区二区| 亚洲国产日韩a在线播放| 欧美日本一区二区| 蜜臀a∨国产成人精品| 久久日韩粉嫩一区二区三区| 国产精品456| 中文字幕成人av| 91性感美女视频| 亚洲自拍偷拍av| 欧美一区二区三区啪啪| 激情另类小说区图片区视频区| 久久午夜色播影院免费高清| 成人av午夜影院| 亚洲 欧美综合在线网络| 欧美一区中文字幕| 国产一区二区三区日韩| 亚洲欧洲成人av每日更新| 欧美在线你懂得| 激情五月播播久久久精品| 国产精品免费aⅴ片在线观看| 91免费视频网| 免费人成精品欧美精品| 日本一区二区三区在线观看| 在线观看一区二区精品视频| 麻豆国产精品一区二区三区 | 成人av电影在线网| 亚洲成a人v欧美综合天堂| 日韩亚洲欧美综合| av电影天堂一区二区在线观看| 午夜精品一区二区三区三上悠亚| 久久午夜免费电影| 欧美色综合网站| 国产成人综合在线播放| 亚洲另类春色校园小说| 精品粉嫩aⅴ一区二区三区四区| 国产成人亚洲综合a∨婷婷| 亚洲最大色网站| 国产欧美视频一区二区| 欧美色图激情小说| 成人中文字幕在线| 五月天一区二区三区| 亚洲欧洲av在线| 欧美成人艳星乳罩| 欧美日韩在线免费视频| 国产精品一区二区久激情瑜伽 | 欧美日产国产精品| 成人aa视频在线观看| 老鸭窝一区二区久久精品| 亚洲欧美日本在线| 久久久久久久久伊人| 91麻豆精品国产91久久久资源速度 | 天天综合网天天综合色| 国产精品久久久久桃色tv| 日韩欧美亚洲一区二区| 欧美日韩亚洲综合一区二区三区| 成人黄色在线网站| 国产精品自拍在线| 久久精品久久久精品美女| 午夜久久久影院| 亚洲最新视频在线观看| 亚洲欧美日韩在线| 日韩一区在线播放| 国产天堂亚洲国产碰碰| 久久综合中文字幕| 欧美xxxx在线观看| 日韩视频一区二区在线观看| 欧美系列亚洲系列| 欧美日韩在线一区二区| 欧美在线播放高清精品| 99精品欧美一区二区三区综合在线| 黄色日韩网站视频| 久久99精品国产麻豆不卡| 丝袜亚洲另类欧美| 视频在线观看国产精品| 日日夜夜一区二区| 三级一区在线视频先锋 | 懂色一区二区三区免费观看 | 在线观看日韩电影| 在线观看区一区二| 欧美三级三级三级爽爽爽| 欧美主播一区二区三区美女| 在线日韩av片| 欧美视频日韩视频在线观看| 欧美在线免费观看视频| 欧美日韩亚洲另类| 91精品欧美久久久久久动漫 | 亚洲视频一区二区在线观看| 综合分类小说区另类春色亚洲小说欧美| 亚洲国产精品成人综合| 国产午夜亚洲精品理论片色戒 | 欧美国产一区二区在线观看| 久久精品亚洲一区二区三区浴池| 日本一区二区动态图| 亚洲精品v日韩精品| 日韩激情视频在线观看| 韩国精品主播一区二区在线观看| 成人免费毛片a| 91精品办公室少妇高潮对白| 欧美日韩在线直播| 久久先锋影音av鲁色资源网| 1024亚洲合集| 午夜电影一区二区| 国产高清视频一区| 欧美性高清videossexo| 亚洲精品在线免费播放| 国产精品国产三级国产有无不卡 | 最新国产の精品合集bt伙计| 一区二区三区精品视频在线| 日韩不卡在线观看日韩不卡视频| 九一久久久久久| 99久久99久久精品免费观看| 欧美视频在线播放| 久久久久久久一区| 夜夜夜精品看看| 极品美女销魂一区二区三区| 91老师片黄在线观看| 欧美大片免费久久精品三p | 色诱视频网站一区| 91麻豆精品国产91久久久久久| 国产亚洲欧美日韩俺去了| 夜夜精品浪潮av一区二区三区| 久久爱www久久做| 91福利社在线观看| 久久免费视频色| 天天av天天翘天天综合网| 不卡av免费在线观看| 在线综合+亚洲+欧美中文字幕| 国产精品水嫩水嫩| 久久精品国产亚洲5555| 在线国产电影不卡| 国产精品毛片久久久久久| 美女www一区二区| 在线观看日韩一区| 国产精品久久一级| 精品在线亚洲视频| 欧美日韩一区小说| 成人免费一区二区三区视频| 毛片一区二区三区| 欧美三日本三级三级在线播放| 国产精品久久久久婷婷| 国内精品久久久久影院色| 欧美剧在线免费观看网站| 亚洲人吸女人奶水| 风间由美一区二区三区在线观看 | 亚洲美女一区二区三区| 国产精品亚洲一区二区三区在线| 在线播放一区二区三区| 一区二区三区欧美在线观看| 国产成人a级片| 欧美精品一区二区三| 免费在线观看视频一区| 9191久久久久久久久久久| 夜夜操天天操亚洲| 日本道精品一区二区三区| 亚洲欧美在线视频观看| 播五月开心婷婷综合| 亚洲国产精品成人综合| 高清不卡一区二区在线| 国产欧美日韩三区| 国产成人a级片|