91精品国产综合久久四虎久久_国产成人午夜高潮毛片_99er视频精品免费观看_2020亚洲熟女在线观看_日本女优人体写真_国内黄色毛片_年轻的老师中文版在线_丰满女邻居做爰_久久久久久精品成人免费图片

 
詳解HTTP:協(xié)議基礎(chǔ)與Go語言實現(xiàn)
詳解HTTP:協(xié)議基礎(chǔ)與Go語言實現(xiàn)
澀川喜規(guī)
侯振龍 譯
出版時間:2022年09月
頁數(shù):413
本書有什么特色?
● 從歷史中學(xué)習(xí)
本書沿著HTTP/1.0、HTTP/1.1、HTTP/2、HTTP/3的發(fā)展歷史,通俗易懂地講解了各個版本的HTTP的協(xié)議規(guī)范,闡明了HTTP是如何通過功能設(shè)計和擴展來實現(xiàn)高速化和安全性目標的。

● 從代碼中學(xué)習(xí)
本書結(jié)合大量用Go語言實現(xiàn)的具體的客戶端代碼示例,詳細介紹了瀏覽器內(nèi)部的動作、瀏覽器與服務(wù)器進行交互的方法等,揭秘了HTTP通信的機制。
  1. 前言
  2. 第1章 HTTP/1.0的語法:4個基本元素
  3. 1.1 HTTP的歷史
  4. 1.2 嘗試HTTP/0.9能夠?qū)崿F(xiàn)的處理
  5. 1.3 從HTTP/0.9到HTTP/1.0的發(fā)展過程
  6. 1.4 HTTP的祖先(1):電子郵件
  7. 1.4.1 發(fā)送首部
  8. 1.4.2 接收首部
  9. 1.4.3 MIME類型
  10. 1.4.4 Content-Type與安全性
  11. 1.4.5 HTTP與電子郵件的區(qū)別
  12. 1.5 HTTP的祖先(2):新聞組
  13. 1.5.1 方法
  14. 1.5.2 狀態(tài)碼
  15. 1.6 重定向
  16. 1.7 URL
  17. 1.7.1 URL的結(jié)構(gòu)
  18. 1.7.2 URL與國際化
  19. 1.7.3 標準URL
  20. 1.7.4 協(xié)議相對URL
  21. 1.8 主體
  22. 1.9 本章小結(jié)
  23. 第2章 HTTP/1.0的語義:瀏覽器基本功能的背后
  24. 2.1 使用x-www-form-urlencoded發(fā)送表單
  25. 2.2 使用multipart/form-data發(fā)送文件
  26. 2.3 使用表單進行重定向
  27. 2.4 內(nèi)容協(xié)商
  28. 2.4.1 確定文件類型
  29. 2.4.2 確定顯示語言
  30. 2.4.3 確定字符集
  31. 2.4.4 使用壓縮提高通信速度
  32. 2.5 Cookie
  33. 2.5.1 Cookie的分類
  34. 2.5.2 Cookie的錯誤用法
  35. 2.5.3 對Cookie加以限制
  36. 2.5.4 源
  37. 2.5.5 SameSite屬性
  38. 2.6 認證和會話
  39. 2.6.1 BASIC認證和Digest認證
  40. 2.6.2 使用Cookie進行會話管理
  41. 2.6.3 使用帶簽名的Cookie保存會話數(shù)據(jù)
  42. 2.7 代理
  43. 2.8 緩存
  44. 2.8.1 基于更新時間的緩存
  45. 2.8.2 Expires首部
  46. 2.8.3 Pragma:no-cache
  47. 2.8.4 不執(zhí)行緩存的條件
  48. 2.8.5 添加ETag
  49. 2.8.6 Cache-Control
  50. 2.8.7 Vary
  51. 2.9 Referer
  52. 2.10 面向搜索引擎的內(nèi)容訪問控制
  53. 2.10.1 robots.txt
  54. 2.10.2 robots.txt與訴訟案例
  55. 2.10.3 站點地圖
  56. 2.11 用戶代理
  57. 2.12 本章小結(jié)
  58. 第3章 使用Go語言實現(xiàn)HTTP/1.0客戶端
  59. 3.1 為何使用Go語言
  60. 3.2 Go語言的API結(jié)構(gòu)
  61. 3.3 本章的主要內(nèi)容
  62. 3.4 GET方法的發(fā)送及主體、狀態(tài)碼和首部的接收
  63. 3.5 使用GET方法發(fā)送查詢
  64. 3.6 使用HEAD方法獲取首部
  65. 3.7 使用POST方法發(fā)送x-www-form-urlencoded形式的表單
  66. 3.8 使用POST方法發(fā)送任意主體
  67. 3.9 使用multipart/form-data形式發(fā)送文件
  68. 3.10 Cookie的發(fā)送和接收
  69. 3.11 使用代理
  70. 3.12 訪問文件系統(tǒng)
  71. 3.13 發(fā)送任意方法
  72. 3.14 發(fā)送首部
  73. 3.15 超時
  74. 3.16 國際化域名
  75. 3.17 本章小結(jié)
  76. 第4章 HTTP/1.1的語法:追求高速化和安全性
  77. 4.1 通過Keep-Alive提高通信速度
  78. 4.2 TLS
  79. 4.2.1 散列函數(shù)
  80. 4.2.2 公共密鑰加密、公開密鑰加密和數(shù)字簽名
  81. 4.2.3 密鑰交換
  82. 4.2.4 區(qū)分使用公共密鑰方式和公開密鑰方式的理由
  83. 4.2.5 TLS 的通信步驟
  84. 4.2.6 加密強度
  85. 4.2.7 密碼套件
  86. 4.2.8 選擇協(xié)議
  87. 4.2.9 TLS保護的內(nèi)容
  88. 4.2.10 TLS時代
  89. 4.3 PUT 方法和DELETE方法的標準化
  90. 4.4 添加OPTIONS方法、TRACE方法和CONNECT 法
  91. 4.4.1 OPTIONS
  92. 4.4.2 TRACE(TRACK)
  93. 4.4.3 CONNECT
  94. 4.5 協(xié)議升級
  95. 4.5.1 客戶端請求升級
  96. 4.5.2 服務(wù)器請求升級
  97. 4.5.3 向TLS升級時的問題點
  98. 4.6 支持虛擬主機
  99. 4.7 Chunk
  100. 4.8 確認主體發(fā)送
  101. 4.9 Data URI方案
  102. 4.10 本章小結(jié)
  103. 第5章 HTTP/1.1的語義:HTTP的擴展功能
  104. 5.1 下載文件并保存到本地…
  105. 5.1.1 保存文件的Content-Disposition首部
  106. 5.1.2 默認文件名使用中文
  107. 5.1.3 在瀏覽器中顯示
  108. 5.2 暫停和恢復(fù)下載
  109. 5.2.1 指定多個范圍進行下載
  110. 5.2.2 并行下載
  111. 5.3 XMLHttpRequest
  112. 5.3.1 XMLHttpRequest的誕生
  113. 5.3.2 XMLHttpRequest與瀏覽器的HTTP請求的區(qū)別
  114. 5.3.3 Comet
  115. 5.3.4 XMLHttpRequest的安全性
  116. 5.4 Geo-Location
  117. 5.4.1 客戶端獲取位置的方法
  118. 5.4.2 服務(wù)器推測客戶端位置的方法
  119. 5.5 X-Powered-By首部
  120. 5.6 遠程過程調(diào)用
  121. 5.6.1 XML-RPC
  122. 5.6.2 SOAP
  123. 5.6.3 JSON-RPC
  124. 5.7 WebDAV
  125. 5.8 網(wǎng)站間共用的認證和授權(quán)平臺
  126. 5.8.1 單點登錄
  127. 5.8.2 Kerberos認證
  128. 5.8.3 SAML
  129. 5.8.4 OpenID
  130. 5.8.5 OpenSocial
  131. 5.8.6 OAuth
  132. 5.8.7 OpenID Connect
  133. 5.8.8 JWT
  134. 5.8.9 實際服務(wù)對認證系統(tǒng)提供支持時的陷阱
  135. 5.9 本章小結(jié)
  136. 第6章 使用Go語言實現(xiàn)HTTP/1.1客戶端
  137. 6.1 Keep-Alive
  138. 6.2 TLS
  139. 6.2.1 創(chuàng)建證書
  140. 6.2.2 HTTPS服務(wù)器和注冊證書
  141. 6.2.3 使用Go語言實現(xiàn)客戶端
  142. 6.2.4 客戶端證書
  143. 6.3 協(xié)議升級
  144. 6.3.1 服務(wù)器代碼
  145. 6.3.2 客戶端代碼
  146. 6.4 Chunk
  147. 6.4.1 服務(wù)器發(fā)送數(shù)據(jù)
  148. 6.4.2 客戶端依次接收數(shù)據(jù)(簡易版)
  149. 6.4.3 客戶端依次接收數(shù)據(jù)(完整版)
  150. 6.5 遠程過程調(diào)用
  151. 6.6 本章小結(jié)
  152. 第7章 HTTP/2和HTTP/3的語法:重新定義協(xié)議
  153. 7.1 HTTP/2和HTTP/3中未變化的內(nèi)容
  154. 7.2 HTTP/2
  155. 7.2.1 SPDY
  156. 7.2.2 HTTP/2的改進
  157. 7.2.3 使用流實現(xiàn)高速通信
  158. 7.2.4 HTTP/2的應(yīng)用程序?qū)?
  159. 7.2.5 流量控制
  160. 7.2.6 服務(wù)器推送
  161. 7.2.7 使用預(yù)加載優(yōu)化資源獲取操作
  162. 7.2.8 使用HPACK壓縮首部
  163. 7.3 HTTP/3
  164. 7.3.1 QUIC
  165. 7.3.2 向HTTP/3邁進
  166. 7.3.3 HTTP/3的層
  167. 7.3.4 使用HTTP Alternative Services進行升級
  168. 7.4 用于JavaScript的新的通信API
  169. 7.4.1 Fetch API
  170. 7.4.2 Server-Sent Events
  171. 7.4.3 WebSocket
  172. 7.5 WebRTC
  173. 7.5.1 WebRTC的用例(1)
  174. 7.5.2 WebRTC的用例(2)
  175. 7.5.3 RFC之外的用例
  176. 7.5.4 RTCPeerConnection
  177. 7.5.5 媒體通道和getUserMedia
  178. 7.5.6 RTCDataChannel
  179. 7.6 HTTP Web推送
  180. 7.6.1 瀏覽器向推送服務(wù)申請訂閱
  181. 7.6.2 應(yīng)用程序服務(wù)器向推送服務(wù)投遞消息
  182. 7.6.3 瀏覽器接收推送消息
  183. 7.6.4 設(shè)置緊急度
  184. 7.7 本章小結(jié)
  185. 第8章 HTTP/2的語義:新的用例
  186. 8.1 響應(yīng)式設(shè)計
  187. 8.2 語義網(wǎng)
  188. 8.2.1 RDF
  189. 8.2.2 都柏林核心
  190. 8.2.3 RSS
  191. 8.2.4 微格式
  192. 8.2.5 微數(shù)據(jù)
  193. 8.2.6 RDF的逆襲
  194. 8.2.7 RDF系列之外的數(shù)據(jù)
  195. 8.3 開放內(nèi)容協(xié)議
  196. 8.4 QR碼
  197. 8.5 AMP6
  198. 8.6 通過移動應(yīng)用程序使瀏覽環(huán)境多樣化
  199. 8.6.1 iOS的DeepLink9
  200. 8.6.2 Android的DeepLink
  201. 8.7 使用HTTP Live Streaming播放視頻流
  202. 8.7.1 HLS的視頻標簽
  203. 8.7.2 Master的.m3u8文件
  204. 8.7.3 字幕的.m3u8文件
  205. 8.7.4 視頻文件
  206. 8.7.5 HLS的優(yōu)點和缺點
  207. 8.7.6 HLS出現(xiàn)前后的視頻流相關(guān)的歷史
  208. 8.8 使用MPEG-DASH播放視頻流
  209. 8.8.1 MPEG-DASH與HLS在播放方法上的區(qū)別
  210. 8.8.2 Media Presentation Description文件的結(jié)構(gòu)
  211. 8.9 CMAF
  212. 8.10 本章小結(jié)
  213. 第9章 使用Go語言實現(xiàn)HTTP/2、HTML5的協(xié)議
  214. 9.1 HTTP/2
  215. 9.2 HTTP/2的服務(wù)器推送
  216. 9.3 Server-Sent Events
  217. 9.3.1 服務(wù)器的實現(xiàn)
  218. 9.3.2 客戶端的實現(xiàn)
  219. 9.4 WebSocket
  220. 9.4.1 服務(wù)器的實現(xiàn)
  221. 9.4.2 客戶端的實現(xiàn)
  222. 9.4.3 房間的實現(xiàn)
  223. 9.5 本章小結(jié)
  224. 第10章 從客戶端的角度來看RESTful API
  225. 10.1 RESTful API
  226. 10.1.1 RESTful API和RPC API的區(qū)別
  227. 10.1.2 Web API和事務(wù)
  228. 10.1.3 HATEOAS
  229. 10.1.4 RESTful和REST-ish
  230. 10.2 方法
  231. 10.3 狀態(tài)碼
  232. 10.4 主體
  233. 10.5 查看實際的RESTful API(PAY.JP的示例)
  234. 10.6 查看實際的RESTful API(GitHub的示例)
  235. 10.6.1 GitHub的授權(quán)
  236. 10.6.2 獲取信息的API訪問
  237. 10.6.3 刷新信息的API訪問
  238. 10.7 訪問RESTful API時的具體問題
  239. 10.7.1 超時
  240. 10.7.2 訪問次數(shù)的限制
  241. 10.8 本章小結(jié)
  242. 第11章 使用JavaScript實現(xiàn)瀏覽器的動態(tài)HTTP請求
  243. 11.1 瀏覽器的HTTP與生命周期
  244. 11.2 XMLHttpRequest
  245. 11.3 Fetch API
  246. 11.3.1 Fetch API的基礎(chǔ)內(nèi)容
  247. 11.3.2 Fetch的選項
  248. 11.3.3 創(chuàng)建和解析查詢參數(shù)
  249. 11.3.4 發(fā)送主體
  250. 11.3.5 只有Fetch API可以執(zhí)行的操作
  251. 11.3.6 使用Fetch API時常見的錯誤
  252. 11.3.7 在瀏覽器之外的JavaScript環(huán)境中使用Fetch API
  253. 11.4 使用JavaScript重新加載瀏覽器時的HTTP 訪問
  254. 11.5 下載文件
  255. 11.6 Server-Sent Events
  256. 11.7 WebSocket
  257. 11.8 本章小結(jié)
  258. 第12章 Web應(yīng)用程序的基礎(chǔ)知識
  259. 12.1 術(shù)語
  260. 12.2 基本流程
  261. 12.3 Web應(yīng)用程序的請求的生命周期
  262. 12.3.1 HTTP請求
  263. 12.3.2 會話
  264. 12.4 Web應(yīng)用程序的動作模式
  265. 12.4.1 第1代:服務(wù)端渲染
  266. 12.4.2 第2代:Ajax
  267. 12.4.3 第3代:單頁面應(yīng)用
  268. 12.4.4 第3.5代:單頁面應(yīng)用 + 服務(wù)端渲染
  269. 12.5 基礎(chǔ)設(shè)施的結(jié)構(gòu)
  270. 12.5.1 開發(fā)環(huán)境
  271. 12.5.2 實際開發(fā)環(huán)境的基本結(jié)構(gòu)
  272. 12.6 基礎(chǔ)設(shè)施的其他形式
  273. 12.6.1 PaaS
  274. 12.6.2 Serverless
  275. 12.6.3 微服務(wù)
  276. 12.7 Web應(yīng)用程序的內(nèi)部層次結(jié)構(gòu)
  277. 12.8 Web應(yīng)用程序的組成元素的詳細分類
  278. 12.9 Web API的設(shè)計:區(qū)分使用數(shù)據(jù)容器
  279. 12.10 今后不再使用的技術(shù)
  280. 12.10.1 CGI
  281. 12.10.2 RIA
  282. 12.11 本章小結(jié)
  283. 第13章 云時代的HTTP:Web的各種強化技術(shù)
  284. 13.1 更大規(guī)模的Web系統(tǒng)的結(jié)構(gòu)
  285. 13.2 DNS
  286. 13.2.1 DNS預(yù)查詢
  287. 13.2.2 DNS服務(wù)器的緩存
  288. 13.2.3 DNS客戶端的緩存
  289. 13.2.4 DNS負載均衡
  290. 13.2.5 DNS引流
  291. 13.2.6 使用SRV記錄的服務(wù)發(fā)現(xiàn)
  292. 13.3 反向代理
  293. 13.4 CDN
  294. 13.4.1 提高通信本身的速度和穩(wěn)定性
  295. 13.4.2 作為靠近用戶的高級代理服務(wù)器
  296. 13.4.3 CDN的注意事項
  297. 13.5 負載均衡器
  298. 13.6 API網(wǎng)關(guān)
  299. 13.7 健康檢查
  300. 13.7.1 Liveness Prove
  301. 13.7.2 Readiness Prove
  302. 13.8 VPC
  303. 13.9 微服務(wù)與認證
  304. 13.10 分布式追蹤
  305. 13.10.1 向子任務(wù)傳遞追蹤信息的HTTP首部
  306. 13.10.2 向瀏覽器傳遞服務(wù)器內(nèi)部的時間信息的HTTP首部
  307. 13.11 其他技術(shù)元素
  308. 13.12 本章小結(jié)
  309. 第14章 安全:守護瀏覽器的HTTP功能
  310. 14.1 傳統(tǒng)類型的攻擊
  311. 14.2 針對瀏覽器的攻擊的特征
  312. 14.3 跨站腳本攻擊
  313. 14.3.1 設(shè)置Cookie以防止泄露
  314. 14.3.2 Content-Security-Policy首部
  315. 14.3.3 Content-Security-Policy和JavaScript模板引擎
  316. 14.3.4 Mixed Content的應(yīng)對策略
  317. 14.3.5 CORS
  318. 14.4 中間人攻擊
  319. 14.5 會話劫持
  320. 14.5.1 舊的會話管理和會話固定攻擊
  321. 14.5.2 Cookie注入
  322. 14.6 跨站請求偽造
  323. 14.6.1 應(yīng)對跨站請求偽造的令牌
  324. 14.6.2 SameSite屬性
  325. 14.7 點擊劫持
  326. 14.8 列表型賬戶入侵
  327. 14.8.1 密碼的保存:不保存明文密碼
  328. 14.8.2 保存密碼時使用的各種散列函數(shù)
  329. 14.8.3 密碼的日志掩碼化
  330. 14.8.4 多因素身份驗證
  331. 14.8.5 TOTP算法
  332. 14.8.6 WebAuthn
  333. 14.8.7 通知用戶別處的登錄
  334. 14.9 注入存在漏洞的代碼
  335. 14.10 面向Web應(yīng)用程序的安全指南
  336. 14.11 Web廣告和安全
  337. 14.11.1 第三方Cookie
  338. 14.11.2 Cookie以外的代替手段
  339. 14.11.3 Google Analytics
  340. 14.11.4 在不確定用戶的情況下進行推測(Finger Print)
  341. 14.12 本章小結(jié)
  342. 附錄
  343. 后記
書名:詳解HTTP:協(xié)議基礎(chǔ)與Go語言實現(xiàn)
作者:澀川喜規(guī)
譯者:侯振龍 譯
國內(nèi)出版社:人民郵電出版社
出版時間:2022年09月
頁數(shù):413
書號:978-7-115-59322-1
原版書書名:Real World HTTP, 2E
原版書出版商:O'Reilly Media
澀川喜規(guī)
 
現(xiàn)就職于日本Future Corporation,工作中經(jīng)常使用Python、C++、JavaScript、Golang,對Web有濃厚興趣。著有《Go系統(tǒng)編程》、Mithril、《Mobage核心技術(shù)》(合著)等,同時也是The Art of Community的日文版譯者。
 
 
購買選項
定價:129.80元
書號:978-7-115-59322-1
出版社:人民郵電出版社