前端面試之httpcode 301和302的區(qū)別介紹

前端的小伙伴們大家好,相信很多小伙伴們面試的時候都被問過httpcode 301和302的區(qū)別。好多小伙伴們不加思索就答:301是永久重定向,302是臨時重定向。然后你要是這么回答,面試官就會在心里默默地扣掉1分。繼續(xù)問你:還有其他區(qū)別嗎?下面小編就為大家詳細的說一下這兩者的區(qū)別。
1. 定義
301:被請求的資源已永久移動到新位置,并且將來任何對此資源的引用都應該使用本響應返回的若干個 URI 之一。如果可能,擁有鏈接編輯功能的客戶端應當自動把請求的地址修改為從服務器反饋回來的地址。除非額外指定,否則這個響應也是可緩存的。
302:請求的資源現(xiàn)在臨時從不同的 URI 響應請求。由于這樣的重定向是臨時的,客戶端應當繼續(xù)向原有地址發(fā)送以后的請求。只有在Cache-Control
或Expires中進行了指定的情況下,這個響應才是可緩存的。
兩者都是一個POST請求經(jīng)過 301/302 后會被瀏覽器轉(zhuǎn)為GET請求
2. 緩存
定義上已經(jīng)給出,對于301請求,瀏覽器是默認給一個很長的緩存。而302是不緩存的。
3. 搜索引擎
301: 舊地址A的資源不可訪問了(永久移除), 重定向到網(wǎng)址B,搜索引擎會抓取網(wǎng)址B的內(nèi)容,同時將網(wǎng)址保存為B網(wǎng)址。
302: 舊地址A的資源仍可訪問,這個重定向只是臨時從舊地址A跳轉(zhuǎn)到B地址,這時搜索引擎會抓取B網(wǎng)址內(nèi)容,但是會將網(wǎng)址保存為A的。
4. 安全
盡量使用301跳轉(zhuǎn),以防止網(wǎng)址劫持!
假如,A -> B。大部分的搜索引擎在大部分情況下,當收到302 重定向時,有的時候搜索引擎,尤其是Google,并不能總是抓取目標網(wǎng)址。比如說,有的時候A 網(wǎng)址很短,但是它做了一個302 重定向到B 網(wǎng)址,而B 網(wǎng)址是一個很長的亂七八糟的URL 網(wǎng)址,甚至還有可能包含一些問號之類的參數(shù)。很自然的,A 網(wǎng)址更加用戶友好,而B 網(wǎng)址既難看,又不用戶友好。這時Google 很有可能會仍然顯示網(wǎng)址A。由于搜索引擎排名算法只是程序而不是人,在遇到302 重定向的時候,并不能像人一樣的去準確判定哪一個網(wǎng)址更適當,這就造成了網(wǎng)址URL 劫持的可能性。也就是說,一個不道德的人在他自己的網(wǎng)址A 做一個302 重定向到你的網(wǎng)址B,出于某種原因, Google 搜索結(jié)果所顯示的仍然是網(wǎng)址A,但是所用的網(wǎng)頁內(nèi)容卻是你的網(wǎng)址B 上的內(nèi)容,這種情況就叫做網(wǎng)址URL 劫持。你辛辛苦苦所寫的內(nèi)容就這樣被別人偷走了。302 重定向所造成的網(wǎng)址URL 劫持現(xiàn)象,已經(jīng)存在一段時間了。不過到目前為止,似乎也沒有什么更好的解決方法。在正在進行的谷歌大爸爸數(shù)據(jù)中心轉(zhuǎn)換中,302 重定向問題也是要被解決的目標之一。從一些搜索結(jié)果來看,網(wǎng)址劫持現(xiàn)象有所改善,但是并沒有完全解決。
簡單來說就是:有個壞人把他的電話來電轉(zhuǎn)移到了一個明星那,讓大家都以為他的電話是那個明星的。他的手機號成名后,就可以拉個微信群,大膽的假裝明星,實現(xiàn)他的微shang夢,從此走上人生巔峰。
總結(jié)
到此這篇關(guān)于前端面試之httpcode 301和302的區(qū)別的文章就介紹到這了,更多相關(guān)http 301 和 302的區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!
相關(guān)文章
- 這篇文章主要介紹了程序員面試的幾個小技巧,在平時面試的時候,除了實打?qū)嵉募寄苓€需要更多的技巧,雙管齊下才能贏得更大的勝算,技能方面就不多說了,下面來分享幾個面試2023-04-23
- 面試中,問鎖主要是兩方面:鎖的日常使用場景 + 鎖原理,鎖的日常使用場景主要考察對鎖 API 的使用熟練度,看看你是否真的使用過這些 API,而不是紙上談兵,鎖原理主要就是2022-05-19
- 這篇文章主要介紹了Mybatis常見面試題詳細總結(jié),通過總結(jié)列舉大量的mybatis面試常見題目供給大家參考,希望對大家有所幫助2021-08-24
2020Java后端開發(fā)面試題總結(jié)(春招+秋招+社招)
這篇文章主要介紹了2020Java后端開發(fā)面試題總結(jié)(春招+秋招+社招),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2021-02-18- 這篇文章主要介紹了MySQL數(shù)據(jù)庫選擇題小結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2021-02-07
- 這篇文章主要介紹了30道有趣的JVM面試題(小結(jié)),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2020-11-26
- 這篇文章主要介紹了Python面試題爬蟲篇小結(jié)(附答案),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2020-10-28
- 這篇文章主要介紹了還不理解B樹和B+樹,那就看看這篇文章吧,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一2020-09-10
Java面試通關(guān)要點匯總(備戰(zhàn)秋招)
這篇文章主要介紹了Java面試通關(guān)要點匯總(備戰(zhàn)秋招),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2020-09-08- 這篇文章主要介紹了10道JVM常見面試題解析(附答案),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學2020-09-04