通過Android 客戶端上傳資料到伺服器

2021-06-21 22:15:30 字數 3043 閱讀 3472

outstream.write(sb.tostring().getbytes());//傳送表單字段資料

for(formfile file : files)

file.getinstream().close();

}else

outstream.write("\r\n".getbytes());

}byte end_data = ("--" + boundary + "--\r\n").getbytes();//資料結

束標誌outstream.write(end_data);

outstream.flush();

int cah = conn.getresponsecode();

if (cah != 200) throw new runtimeexception("請求url 失敗");

inputstream is = conn.getinputstream();

int ch;

stringbuilder b = new stringbuilder();

while( (ch = is.read()) != -1 )

outstream.close();

conn.disconnect();

return b.tostring();

} catch (exception e)

}/**

* 提交資料到伺服器

* @param actionurl 上傳路徑(注:避免使用localhost 或127.0.0.1這樣的路徑

測試, 因為它會指向手機模擬器, 你可以使用 或

這樣的路徑測試)

* @param params 請求引數key 為引數名,value 為引數值

* @param file 上傳檔案

httpclient httpclient = new defaulthttpclient();//看作是瀏覽器

httpresponse response = httpclient.execute(httppost);//傳送post 請求

return streamtool.readinputstream(response.getentity().getcontent());

}/**

* 傳送請求

* @param path 請求路徑

* @param params 請求引數key 為引數名稱value 為引數值

* @param encode 請求引數的編碼

conn.setdooutput(true);//允許對外傳送請求引數

conn.setusecaches(false);//不進行快取

conn.setconnecttimeout(5 * 1000);

conn.setrequestmethod("post");

//下面設定http 請求頭

conn.setrequestproperty("accept", "image/gif, image/jpeg, image/pjpeg,

conn.setrequestproperty("accept-language", "zh-cn");

conn.setrequestproperty("user-agent", "mozilla/4.0 (compatible; msie 8.0;

windows nt 5.2; trident/4.0; .net clr 1.1.4322; .net clr 2.0.50727; .net clr

3.0.04506.30; .net clr 3.0.4506.2152; .net clr 3.5.30729)");

conn.setrequestproperty("content-type",

conn.setrequestproperty("content-length", string.valueof(data.length));

conn.setrequestproperty("connection", "keep-alive");

//傳送引數

dataoutputstream outstream = new

dataoutputstream(conn.getoutputstream());

outstream.write(data);//把引數傳送出去

outstream.flush();

outstream.close();

if(conn.getresponsecode()==200)

return null;} }

客戶端上傳檔案流程

客戶端上傳檔案流程 throws ioexception 1.客戶端 建立鏈結 2.客戶端 傳送檔案上傳請求報文 4001 3.服務端 驗證身份,傳送應答報文 4008 4.客戶端 傳送檔案數通知報文 4006 5.服務端 傳送應答報文 4008 6.客戶端 傳送檔案資訊通知報文 4003 7.服務...

Spring實現客戶端上傳檔案

後台需要處理這些資料,之前沒有接觸過 但類似的fileupload的外掛程式用過,其實原理差不多,因為計算機原始資料都是01 所以只要將這些檔案儲存成二進位制就可以,資料庫 mysql 最大4g 問題1,如果實現 聯調之後共享 問題2,為什麼要轉為2進製,不直接把上傳的檔案放在伺服器上 我也請教了別...

Nodejs作為客戶端上傳檔案

needle 是乙個模擬http client的乙個包,可以將nodejs作為http客戶端傳送http請求。詳細的描述在npm的 上都有介紹。這裡主要介紹以下needle傳送multipart form data請求。needle npm位址 needle 有兩種風格的api,當needle版本大...