版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、移動編程技術(shù)(四),哈爾濱工程大學軟件學院,目 錄,編碼、解碼與亂碼 HTTP通信安全之HTTPS HTTPS的客戶端代碼實現(xiàn) HTTP通信安全之Cookie 通信中使用Cookie的代碼實現(xiàn) HTTP通信安全之HTTP重定向 重定向在代碼中的處理方法 HttpUrlConnection的使用,編碼、解碼與亂碼,亂碼為何產(chǎn)生,計算機中儲存的信息都是用二進制數(shù)表示的,而我們在屏幕 上看到的英文、漢字等字符是二進制數(shù)轉(zhuǎn)換之后的結(jié)果。 通俗的說,按照何種規(guī)則將字符存儲在計算機中,如a用 什么表示,稱為編碼;反之,將存儲在計算機中的二進制 數(shù)解析顯示出來,稱為解碼,如同密碼學中的加密和解密。 在解碼過
2、程中,如果使用了錯誤的解碼規(guī)則,則導致a錯誤 的解析成b,或者直接變成亂碼。,00110000 - 1 01011000 - X 01111001 - y,常用字符集,ASCII ASCII是基于拉丁字母的一套電腦編碼系統(tǒng)。它主要用于顯 示現(xiàn)代英語和其他西歐語言。它是現(xiàn)今最通用的單字節(jié)編碼系統(tǒng), 不過對caf nave這類詞無法處理。 iso8859-1 又稱Latin-1或“西歐語言”,是國際標準化組織的第一個 8位字符集。它以ASCII為基礎(chǔ),在空置的0 xA0-0 xFF的范圍內(nèi),加入96 個字母及符號,藉以供使用變音符號的拉丁字母語言使用。 GB2312 適用于漢字處理、漢字通信等系統(tǒng)
3、之間的信息交換,通行于 中國大陸,新加坡等地也采用此編碼,共收入漢字6763個和非漢字圖形 字符682個。 Big-5 通行于臺灣、香港地區(qū)的一個繁體字編碼方案,俗稱“大五碼” GBK共23940個碼位,共收錄了21003個漢字,完全兼容GB2312, 并包含了BIG5編碼中的所有漢字。 UTF-8 是一種針對Unicode的可變長度字符編碼,又稱萬國碼。UTF-8 用1到4個字節(jié)編碼UNICODE字符。用在網(wǎng)頁上可以同一頁面顯示中文簡 體繁體及其它語言(如日文,韓文),編碼的位置,使用Post方法發(fā)起請求時,如果請求體中的鍵或值存在中文,一般需 要對中文部分進行編碼 http:/192.16
4、8.1.104:8084/EULecture03/mmr 請求體 username=李游,String encodedStr = URLEncoder.encode(李游, UTF-8);,編碼的位置,解碼的位置,服務(wù)器返回的響應(yīng)主體(Body)默認情況下會被服務(wù)器以某種字符集編碼,編碼的字符集可能會在響應(yīng)首部Content-Type中出現(xiàn), 例如:Content-Type:text/html;charset=utf-8 此時,我們需要根據(jù)服務(wù)器響應(yīng)首部中的charset來對響應(yīng)主體進行解碼。 然而,某些時候服務(wù)器的響應(yīng)首部Content-Type中并不存在charset字段,這種情況下,我們
5、需要對響應(yīng)主體的返回流進行復雜的判斷,計算出可能的字符集類型,用來對響應(yīng)主體解碼。,HTTP通信安全之HTTPS,HTTPS是什么?,HTTPS是HTTP的安全版本,就是在安全的傳輸層上發(fā)送HTTP。 HTTPS將原有HTTP報文發(fā)送給一個安全層進行加密,之后再 發(fā)送給TCP(傳輸層)。這個安全層通過SSL(TLS)協(xié)議來實 現(xiàn)。 HTTPS將HTTP協(xié)議與一組強大的對稱、非對稱和基于證書的 加密技術(shù)結(jié)合在一起,使得HTTPS變得安全且靈活,為電子商 務(wù)、電子金融等需求安全保障的業(yè)務(wù)提供了可靠的傳輸。,HTTP通信安全之HTTPS,HTTPS的主要作用,1)驗證服務(wù)器的身份,防止服務(wù)器欺詐 2
6、)驗證客戶端的身份,防止客戶端欺詐和抵賴 3)將HTTP報文在傳輸中加密,保證數(shù)據(jù)在傳輸中的安全,HTTP通信安全之HTTPS,新增的傳輸安全層,HTTP通信安全之HTTPS,端口的變化,HTTP通信安全之HTTPS,HTTP與HTTPS傳輸對比,HTTP通信安全之HTTPS,HTTP通信安全之HTTPS,HTTP通信安全之HTTPS,理解SSL握手,HTTP通信安全之HTTPS,SSL握手的詳細流程,HTTP通信安全之HTTPS,服務(wù)器證書,HTTPS的客戶端代碼實現(xiàn),HTTP通信安全之Cookie,HTTP設(shè)計之初就是一個匿名的無狀態(tài)的請求/響應(yīng)協(xié)議,服務(wù)器 處理來自客戶端的請求,然后回送
7、給客戶端一個響應(yīng),服務(wù)器很 難判斷請求是哪個用戶發(fā)送的,如果服務(wù)器希望跟蹤用戶的瀏覽 行為,就需要采用一種機制來辨識客戶端,Cookie就是服務(wù)器識 別客戶端的多種機制中使用最廣泛的一種。,Cookie的作用,Cookie的類型,Cookie可以分為會話Cookie和持久Cookie,前者是一種臨時 Cookie,他記錄了用戶訪問站點時的設(shè)置與偏好,用戶退出瀏 覽器時,Cookie就被刪除。后者將被保存在磁盤上,即使計算 機重啟它仍然存在,一般用來記錄用戶對站點的設(shè)置和登錄名 等信息。其唯一區(qū)別是后者因為有過期時間而被存儲,前者沒有 過期時間而被刪除。,HTTP通信安全之Cookie,HTTP
8、通信安全之Cookie,使用火狐瀏覽器訪問京東商城時,瀏覽器發(fā)送的Cookie。,HTTP通信安全之Cookie,Cookie的屬性 Name=Value 鍵值對,(必須有),由服務(wù)器生成,客戶端在后續(xù) 訪問該服務(wù)器時將會把鍵值信息帶在請求首部中 Expires 到期時間 (可選) 01-Nov-99 23:12:40 GMT Domain 域名 (可選) domain= Path 路徑(可選)為服務(wù)器特定的文檔分配cookie,路徑/匹配 域名內(nèi)所有內(nèi)容,路徑“/foo”可匹配/foobar或/foo/abc.html, 如果 沒有Path屬性,則將其設(shè)置為產(chǎn)生Set-Cookie響應(yīng)的那個
9、URL的路徑 Secure 安全(可選)表示只有在HTTPS時發(fā)送Cookie,SetCookie: Name=Value;Expires=DATE;Path=PATH; Domain=DOMAIN_NAME;Secure,通信中使用Cookie的代碼實現(xiàn),HTTP通信安全之HTTP重定向,HTTP重定向的作用 1)提高HTTP操作的安全性,可以強制用戶跳轉(zhuǎn) 2)保證HTTP傳輸?shù)目煽啃裕梢允褂脗溆觅Y源 3)最小化延時,為用戶找到能夠提供最佳服務(wù)的服務(wù)器,HTTP通信安全之HTTP重定向,HTTP重定向在代碼中的處理方法,HttpUrlConnection工具的使用,HttpURLConne
10、ction是JAVA提供的訪問HTTP資源的工具,通過它,可以方便快捷的訪問URL資源。 該工具使用步驟:,1)創(chuàng)建HttpURLConnection 實例 URL url = new URL(address); HttpURLConnection conn = (HttpURLConnection)url .openConnection();,2)設(shè)置超時時間,首部,請求方法 conn.setConnectTimeout(10000); conn.setRequestProperty(Accept, image/jpeg,*/*); conn.setRequestProperty(Conne
11、ction, close); conn.setRequestMethod(GET);,3)獲取服務(wù)器響應(yīng)的輸入流 InputStream in = conn.getInputStream();,4)還可以向服務(wù)器寫入請求體,或者上傳數(shù)據(jù) OutputStream out = conn.getOutputStream();,HttpUrlConnection工具的使用,上機練習(一),結(jié)合已學過的Android多線程技術(shù)中的Handler機制,利用HttpClient發(fā)送Get和Post請求,獲取HTTP資源(AndroidManifest不要忘記中加權(quán)限) 要求: Get方法的Url中至少要攜帶一個以上的參數(shù) Post方法的請求體中,至少要攜帶一個以上的參數(shù) 如果返回的響應(yīng)主體中出現(xiàn)亂碼,請嘗試處理 參考請求地址: 00:808
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 聲音的產(chǎn)生與傳播 北師大版八年級物理
- 江蘇省蘇州市2025-2026學年高二上學期期中考試生物
- 高二英語期中模擬卷0(考試版A4)
- 基于合作學習模式的小學語文寫作能力提升課題報告教學研究課題報告
- 2025年獨立站用戶增長五年規(guī)劃報告
- 區(qū)域人工智能教育政策保障與教育資源共享研究教學研究課題報告
- 高中生運用化學動力學原理解釋含水量對食品變質(zhì)速率影響的課題報告教學研究課題報告
- 高中物理教學中實驗操作與理論推導的協(xié)同作用課題報告教學研究課題報告
- 護理學基礎(chǔ)康復護理方法
- 九年級物理ej03-第2節(jié) 串、并聯(lián)電路中電壓的規(guī)律
- 轉(zhuǎn)讓釣場合同協(xié)議書
- 溫泉洗浴行業(yè)分析報告
- 2026年浙江省公務(wù)員考試《行測》真題(A類)
- 《數(shù)據(jù)管理能力成熟度模型》DCMM評估內(nèi)容及流程
- 一年級語文上冊測試題命制與批改標準
- 海外安保培訓核心科目
- 多胎肉羊養(yǎng)殖培訓課件
- 恒豐銀行招聘筆試題及答案
- 湖南省常德市石門一中2026屆高二上數(shù)學期末質(zhì)量跟蹤監(jiān)視試題含解析
- 人教版八年級地理上冊全冊教案
- 氣路基礎(chǔ)知識培訓內(nèi)容課件
評論
0/150
提交評論