今天要來簡單認識一下HTTP Method中的get和post差別,直接用facebook舉例好了!
一開始先用無痕視窗到登入facebook的頁面,同時用F12看網頁背後的原始碼。
這時輸入一個錯誤的帳號密碼,按下登入後網頁就會送出網址給google伺服器。在網路世界的所有動作,不管是取得圖片或是影片,只要按下某個按鈕,最終都是送出一個網址給伺服器。
登入失敗後可以看到在第一個叫做privacy_mutation_token=的一個網址,那facebook要怎麼確認你有輸入正確的帳號密碼,當然就是要附在網址裡傳給它,很明顯這個網址裡就是缺了帳號密碼,可是帳號密碼直接的寫的網址裡就很容易被別人偷走。所以今天要講到的是,有些東西雖然要讓網址帶出去,但必須偷偷的帶,就像放在一個秘密的小紙條裡,看到後就銷毀。
那要怎麼確定這個網址有沒有夾帶秘密小紙條呢?看到第二行Request Method的方法是POST。
其實在送出網址時通常有兩種方式,第一種叫做GET,也就是送出的網址沒有秘密,上面就只有url跟headers;第二種是POST,除了url和headers,還會多一個秘密小紙條區域,上面的秘密只能看一次,我們稱他為payload。
如果你想看這個秘密小紙條區域,就點選Headers旁邊的Payload,可以看到有一個Form Data,裡面就有你的登入資訊,不過密碼的部分它有做轉換,確保facebook真的沒有存你的密碼~