㈠ Android中使用HttpPost實現數據與文件同時上傳的功能
第一步:編寫一個Servlet,把接收到的HTTP信息保存在一個文件中,代碼如下:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//獲取輸入流,是HTTP協議中的實體內容
ServletInputStream sis=request.getInputStream();
//緩沖區
byte buffer[]=new byte[1024];
FileOutputStream fos=new FileOutputStream("d://file.log");
int len=sis.read(buffer, 0, 1024);
//把流里的信息循環讀入到file.log文件中
while( len!=-1 )
{
fos.write(buffer, 0, len);
len=sis.readLine(buffer, 0, 1024);
}
fos.close();
sis.close();
}
第二步:實現如下圖1的的表單頁面,生成一個注冊表單,提交到Servlet中
詳細的代碼如下:
<form action="servlet/ReceiveFile" method="post" enctype="multipart/form-data">
第一個參數<input type="text" name="name1"/> <br/>
第二個參數<input type="text" name="name2"/> <br/>
第一個上傳的文件<input type="file" name="file1"/> <br/>
第二個上傳的文件<input type="file" name="file2"/> <br/>
<input type="submit" value="提交">
</form>
注意了,由於要上傳附件,所以一定要設置enctype為multipart/form-data,才可以實現附件的上傳。
第三步:填寫完信息後按「提交」按鈕後,在D盤下查找file.log文件用記事本打開,數據如下:
-----------------------------7d92221b604bc
Content-Disposition: form-data; name="name1"
hello
-----------------------------7d92221b604bc
Content-Disposition: form-data; name="name2"
world
-----------------------------7d92221b604bc
Content-Disposition: form-data; name="file1"; filename="C:/2.GIF"
Content-Type: image/gif
GIF89a
㈡ IOS http請求的get 和 post的請求的區別
相同點; Get與(對於「post」除非相應里有cache-control或者expires頭域指示其相應不可緩存)請求的相應是可緩存的;
不同點:
1. Get是從伺服器上獲取數據,post是向伺服器傳送數據
2. Get是把參數數據隊列加到提交表單的action屬性所指定的URL中,值和表單中各個欄位一一對應,在URL中可以看到,post是通過HTTP post機制,將表單內各個欄位與其內容放置在html header內一起傳送到action屬性所指的URL地址,用戶看不到這個過程;
3. get傳送的數據量較小,不能大於2kb;post傳送的數據量較大,一般被默認為不受限制的。但理論上,IIS4中最大量為80kb,IIs5中為100kb;
4. get安全性非常低;post安全性較高;
5. get適用於多請求,而保留post僅用於更新站點;
6. 在form提交的時候,如果不指定method,則默認為get請求,form中提交的數據將會附加在url之後,以?與URL分開。字母數字字元原樣發送,但空格轉換為「+」號,其它符號轉換為%xx,其中xx為該符號為16進製表示的ASCII(或ISO Latin-1)值;
7. get請求提交的數據放置在HTTP請求協議頭中,而post提交的數據則放在實體數據數據中;
㈢ http如何實現同時發送文件和報文(用java實現)
這個算是web項目中的文件上傳功能介面。
java的web項目現在可以使用idea編輯器創建spring boot項目快回速構建答。(很簡單,具體步驟請網路)
文件上傳功能也網路吧,一大堆。關鍵詞: spring boot 文件上傳
㈣ 怎麼用C實現Http POST功能向Http伺服器上傳文件
用socket就行了。
和伺服器建立請求。
然後發送請求報文"\r\n\r\n"結束之後是數據。
post分為,application/x-www-form-urlencoded和multipart/form-data boundary=
要是上傳文件,就得使用multipart/form-data boundary=...
伺服器那邊根據boundary來解析出數據。