# Week2:Web基礎 ## 1、完成上機平台所有題目,並截圖貼上 ![](https://i.imgur.com/aGr7FJN.png) ## 2、請說明GET跟POST的差別 * 舉一個例子,若 HTTP 代表現在我們現實生活中寄信的機制,那麼信封的格式就是 HTTP。姑且將信封外的內容稱為 head,信封內的書信稱為 body,那麼 HTTP 的 Method 就是要告訴郵差寄信的規則。 * 假設 GET 表信封內不能裝信件的寄送方式,就像是明信片一般,你可以把要傳遞的資訊寫在信封( head ),寫到滿為止,價格比較便宜。而 POST 就是信封內有裝信件的寄送方式(具有body),不但信封可以寫東西,信封內 (body) 還可以置入你想要寄送的資料或檔案,價格較貴。 * 使用 GET 的時候我們直接將要傳送的資料以 Query String(一種Key / Vaule的編碼方式)加在我們要寄送的地址( URL )後面,然後交給郵差傳送。使用 POST 的時候則是將寄送地址( URL )寫在信封上,另外將要傳送的資料寫在另一張信紙後,將信紙放到信封裡面,交給郵差傳送。 ## 3、請說明HTTP跟HTTPS的差別 * HTTP 傳輸的 Web 網頁中,對於系統設備的授權是「統一的」。這中間也運用到了流量劫持的原理,如果你今天使用一個視訊聊天網站,中間網頁需要訪問你的視訊鏡頭,等到你勾選同意授權時,這頁面在通過某個結點時被有心人士偷塞了一段CODE,但對瀏覽器來看,這仍是你原本網頁的一部分,而這個有心人也自然拿到了你的訪問權了。 * 而HTTPS(超文本傳輸"安全協定"),就是透過了SSL/TSL去做了一道安全鎖,透過前述提到的andshake(交握)、公鑰基礎設施(也就是公私鑰加密)、CA(第三方身分認證機構)等,來解決前面我們HTTP無法解決的問題。 ## 4、請說明 .git 在網路上的危害 * 若在網路上取得.git,只要使用網路上的 script 就可以完整地復原整個 git repository。原始碼間接被公開,對資料和智慧財產有害。