網(wǎng)絡(luò)協(xié)議 Day14 ABNF 請(qǐng)求頭 響應(yīng)頭

一、ABNF

1.什么是 ABNF?(了解)
ABNF
2. ABNF 的格式如何?(理解即可)
ABNF01
request-line / status-line
header-filed / message-body
3. URL 中如果出現(xiàn)特殊字符(中文字符或空格),要怎么處理?瀏覽器的默認(rèn)處理是什么?(重要)
編碼
4. 使用 Xshell + telnet 可以面向報(bào)文觀察 HTTP。(了解)
Xshell

二、請(qǐng)求頭字段

1. GET、POST、HEAD 請(qǐng)求各自的特點(diǎn)和適用場(chǎng)景?(重要)
適用場(chǎng)景說明
2. 什么是盜鏈?什么是防盜鏈?通過那個(gè)請(qǐng)求頭可以防盜鏈?(重要、待實(shí)踐)

盜鏈:就是在自己的網(wǎng)站上,盜用其他服務(wù)器的圖片資源,展示到自己的網(wǎng)站上。
防盜鏈:就是防止非自己的網(wǎng)站,訪問自己服務(wù)器的公開圖片資源。
請(qǐng)求頭字段: 可以通過 Referer 請(qǐng)求頭字段來防盜鏈

3. 如果我們需要下載一個(gè)大文件,需要實(shí)現(xiàn)多線程下載和斷點(diǎn)下載,需要依靠請(qǐng)求頭的哪個(gè)字段?
image.png
4. 常見請(qǐng)求頭字段(要認(rèn)識(shí),以及知道作用)
image.png

image.png

image.png
三、響應(yīng)頭字段
1. 常見響應(yīng)頭字段?(要認(rèn)識(shí),以及知道作用)
image.png

image.png
2. Content-Type 的作用?(實(shí)踐 + 重要)
 response.setContentType("text/html;charset=utf-8");
  • ①可以設(shè)定服務(wù)器返回的編碼charset=utf-8,這樣防止亂碼
  • ②告訴客戶端,服務(wù)器返回的是格式text/html
3. Content-Disposition 的作用?(實(shí)踐 + 重要)
@WebServlet("/download")
public class DownloadServlet extends HttpServlet {
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/plain; charset=UTF8");
        response.setHeader("Content-Disposition","attachment; filename=\"download.txt\"");
        response.getWriter().write("這是我的大文件");
    }
}
  • response.setHeader("Content-Disposition","attachment; filename=\"download.txt\""); 可以讓瀏覽器以下載的方式,去下載服務(wù)端返回的數(shù)據(jù)。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容