溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Http API筆記

發(fā)布時間:2020-06-21 20:38:25 來源:網(wǎng)絡(luò) 閱讀:311 作者:wangkai217 欄目:網(wǎng)絡(luò)安全

目前接觸到的網(wǎng)絡(luò)連接API有:

    一、HttpURLConnection

            四要素:1、URL 2、HttpURLConnection 3、outputStream 4、inputStream

                    uri.openConnection(); //獲得HttpURLConnection.

                    hc.setDoInput(true);  //允許輸入

                    hc.setDoOutput(true); //允許輸出

                    hc.setRequestMethod("POST");//設(shè)置為post

                    hc.setUseCaches(false); // post不使用緩存

            hc.setConnectTimeout(3000); //設(shè)置連接超時

                    hc.setReadTimeout(3000);     //設(shè)置讀取超時

                    hc.setRequestProperty("Content-Type","application/x-www-form-urlencoded");

                    hc.setRequestProperty("Charset","UTF-8");

                    os = hc.getOutputStream(); //獲得輸出流

                    os.write(vals);

                    os.flush();

                    if (hc.getResponseCode() == HttpURLConnection.HTTP_OK)

    is = hc.getInputStream();  //獲得輸入流

            通過URL得到HttpURLConnection。

            通過HttpURLConnection得到outputStream和inputStream。

     二、HttpClient

            四要素:1 、HttpParams 2、HttpClient 3、HttpPost/HttpGet  4、HttpEntity 5、HttpResponse 

                BasicHttpParams httpParams = new BasicHttpParams();

HttpConnectionParams.setConnectionTimeout(httpParams,

3000);

HttpConnectionParams.setSoTimeout(httpParams,3000);

                HttpClient client = new DefaultHttpClient(httpParams);

HttpPost post = new HttpPost("http://");

                post.setHeader();

                post.setEntity();

HttpResponse response = client.execute(post);

                if (httpResponse.getStatusLine().getStatusCode() == 200)

                    response.getEntity();

       注意: HttpEntity 要使用恰當?shù)念?/p>

        常用 new ByteArrayEntity(content.getBytes("UTF-8"))

            UrlEncodedFormEntity //鍵值對列表



注意:Content-Type

Text:用于標準化地表示的文本信息,文本消息可以是多種字符集和或者多種格式的;

Multipart:用于連接消息體的多個部分構(gòu)成一個消息,這些部分可以是不同類型的數(shù)據(jù);

Application:用于傳輸應(yīng)用程序數(shù)據(jù)或者二進制數(shù)據(jù);

Message:用于包裝一個E-mail消息;

Image:用于傳輸靜態(tài)圖片數(shù)據(jù);

Audio:用于傳輸音頻或者音聲數(shù)據(jù);

Video:用于傳輸動態(tài)影像數(shù)據(jù),可以是與音頻編輯在一起的視頻數(shù)據(jù)格式。


HTML 5 <form> enctype 屬性

enctype 屬性規(guī)定在將表單數(shù)據(jù)發(fā)送到服務(wù)器之前如何對其進行編碼。

application/x-www-form-urlencoded 在發(fā)送前對所有字符進行編碼(默認)。

multipart/form-data 不對字符編碼。當使用有文件上傳控件的表單時,該值是必需的。

text/plain 將空格轉(zhuǎn)換為 "+" 符號,但不編碼特殊字符。


        

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI