【簡介】 隱匿卻無所不在的隱私威脅 從 Web Tracking 技術的攻擊、防禦、歷史發展, 探討當代瀏覽器最重要的隱私議題之一 本書內容改編自第14 屆 iThome 鐵人賽 Security 組冠軍系列文章《天羅地網:淺談 Web Tracking 的過去、現在、未來》。內容涵蓋 Web Tracking 相關技術的基礎、實際案例, 以及未來發展。Web Tracking 意指「在不同情境中重新識別使用者,而且技術上無須使用者的期待或同意」。常見的相關技術包含 Cookie 與 Browser Fingerprinting 等。藉由 Web Tracking,追蹤者可以暗中記錄使用者的行為,推斷其偏好及傾向,以預測或甚至操弄使用者的行為。Web Tracking 相關技術無疑是當今網路生態中最具有隱私侵犯性的技術。 ▇ 正常功能如何濫用於隱私侵害,以及如何防禦 Web Tracking 技術的一大特色在於,其所使用的瀏覽器功能大多不是一開始便設計於追蹤使用者,然而因為一些設計上的缺陷或預料之外的利用方式,使得這些功能可以被濫用於追蹤使用者。當今存在兩種不同的反制徑路:第一,是對於 Web Tracking 技術的防禦,探討如何避免被追蹤;第二,是討論如何在保護隱私的前提下達成那些 Web Tracking 希望做到的目標。這個反制的過程有來自資安社群、瀏覽器開發商、廣告產業界、學界的輸入,雖然都打著保護隱私的稱呼,卻因各式問題而有不少爭議與衝突意見。 ▇ 從基礎瞭解 Web Tracking 的技術發展 本書將從最基礎開始講起,討論過去與現在曾經出現的幾個經典 Web Tracking 技術以及其防禦。同時,也會探討幾個真實世界的案例。本書的最後一章則會討論隱私保護的次世代 Web Tracking 技術。讀者除了會學習到相關技術以外,也會對於一些看似正常、合理的功能可以如何被濫用有更多的了解,並認識到如何分析一個功能所具有的潛在資安與隱私威脅。 本書特色 從攻擊到防禦:同時探討追蹤技術的攻擊與防禦面向 PoC 程式解析:藉由範例程式碼與講解輔助概念理解 實際案例分析:由案例分析瞭解追蹤技術的實際應用 隱私保護技術:探究次世代追蹤技術將如何兼顧隱私 目標讀者 ・對網頁安全、瀏覽器安全與隱私、網路隱私等議題感興趣者 【目錄】 前言 第一章 初探 Web Tracking 1-1 什麼是 Web Tracking Web Tracking 與 Security 的關係 Web Tracking 與廣告投放 Web Tracking 的用途 1-2 背景知識 第二章 Stateful Tracking 2-1 Cookie First-party & Third-party Cookie Third-party Cookie 如何做到 Cross-site Tracking SameSite Cookies Third-party Cookie 的輓歌⋯⋯嗎? Firefox 的防禦手段 Safari 的防禦機制:ITP Storage Access API Chrome 的防禦機制:CHIPS Cookie Syncing 2-2 典型與意料之外的儲存位置 Local Storage IndexedDB Cache HSTS SuperCookie Favicon SuperCookie 2-3 達成 Cross-Site Tracking 的其他方法 CNAME Cloaking Bounce Trackers Link Decoration 2-4 Content Blocking Content Blocker 的不同阻擋樣態 Content Blocker 如何阻擋請求 如何偵測廣告與 tracker 如何維持網站功能性 如何繞過基於 Filter List 的 Content Blocking 2-5 案例分析:Facebook 的 Web Tracking FB Pixel 之前的追蹤 FB Pixel 是什麼 FBCLID 如何運作 防禦 第三章 Stateless Tracking 3-1 Browser Fingerprinting 是什麼 Browser Fingerprinting 範例 Browser Fingerprinting 如何用於追蹤 Browser Fingerprinting 特徵的理想性質 Browser Fingerprinting 的特性 Active 與 Passive Fingerprinting Browser Fingerprinting 的防禦策略 3-2 Information Theory Information Surprisal Entropy Anonymity Sets 3-3 Passive Fingerprinting IP Address HTTP Request Header TLS Fingerprinting 3-4 螢幕與視窗資訊 使用 JavaScript 獲得螢幕與視窗大小 使用 CSS 獲得視窗大小 解法 3-5 Fonts Fingerprinting 篩選待測字型 檢查字型是否存在 防禦 3-6 Canvas Fingerprinting 背景 為何 Canvas Fingerprinting 存在 如何產生 Canvas Fingerprint 防禦 3-7 WebGL Fingerprinting 背景:何謂 WebGL WebGL Report Fingerprinting WebGL Canvas Fingerprinting 防禦 3-8 WebRTC Fingerprinting 與 Media Device Fingerprinting Fingerprinting WebRTC Fingerprinting Media Device Fingerprinting 3-9 Web Audio Fingerprinting Web Audio API Web Audio Fingerprinting Fingerprinting Vectors 為何 Web Audio API 會產生不同結果 解法 3-10 Browser Extensions Fingerprinting Browser Extension 簡介 如何偵測 Browser Extension 是否存在 防禦 3-11 Ad blocker Fingerprinting 如何檢測 Filter List 啟用狀態 優勢與限制 防禦 3-12 Battery Status Fingerprinting Battery Status API Battery Status Fingerprinting 防禦 3-13 JavaScript-less Fingerprinting 選擇性執行 CSS Rules Fonts Fingerprinting by @font-face HSTS SuperCookie with CSS 結語 3-14 Browser Fingerprinting 的防禦以及其如何失敗 為何 Anti-Fingerprinting 這麼難? Browser Fingerprinting 的防禦手段 為何偽造數值很困難? Privacy Paradox:失敗的 Anti-Fingerprinting 技術會使Fingerprinting 更容易 3-15 Privacy Budget Privacy Budget 如何運作 Privacy Budget 的批評 結語 3-16 Fingerprint 的改變與連結 Fingerprint 的穩定度 Fingerprint 為何會更新? 如何串連不同 Fingerprint 第四章 Privacy-preserving Web Tracking 4-1 Web Tracking 可能兼顧隱私嗎? 何謂 Privacy-preserving Privacy-preserving Web Tracking? 瀏覽器的隱私革命 4-2 FLoC FLoC 是什麼?想解決什麼問題? FLoC 的運作方式 FLoC 的批評 FLoC 的攻擊 結語 4-3 Topics API Topics API 如何運作 隱私分析 攻擊 結語 4-4 Unified ID 2.0 Unified ID 2.0 如何運作? 安全分析 隱私分析 結語 4-5 Private Click Measurement PCM 要解決什麼? PCM 如何運作 安全性分析 PCM 的批評 結語 4-6 Interoperable Private Attribution IPA 想解決什麼 IPA 如何運作 IPA 的優勢與限制 4-7 P3P、DNT、GPC Platform for Privacy Preferences(P3P) Do Not Track(DNT) Global Privacy Control(GPC) 結語 參考資料
還沒有人留下心得,快來搶頭香!
為您推薦
相關熱銷的書籍推薦給您
Business Data Networks & Security 10/e +作者:Panko +年份:2015 年10 版 +ISBN:9781292075419 +書號:CS0393PC +規格:平裝/套色 +頁數:480 +出版商:Pearson(Asia) +代理商:滄海 本書特色: This title is a Pearson Global Edition. The Editorial team at Pearson has worked closely with educators around the world to include content which is especially relevant to students outside the United States. The basic, introductory topics provide a firm foundation • Security: Threats, the plan-protect-respond cycle for corporate security management, security planning, and protection-phase issues, such as authentication, firewalls, and cryptography. • Network Design and Management: Shows students how to analyze requirements and turn them into simple network designs. This chapter also covers quality of service goals and the management of temporary traffic peaks and permanent bottlenecks. • An introduction to Microsoft® Office Visio for the creation of network diagrams takes the concepts of network design and management one step further. Job-level content prepares students with the skills demanded by today's employers • Goes beyond the basic topology and switch operation to cover topics such as: link aggregation, the Rapid Spanning Tree Protocol, overprovisioning versus priority, switch purchasing considerations, and more • Focuses on skills and issues likely to arise in job interviews and on the job: laying out an Ethernet LAN with 8.02.11 Wi-Fi; OM standards and link aggregation; Wi-Fi security; IPv6; SDN; and more. The latest in networking techniques and wireless networking, including a focus on security, keeps students up to date and aware of what’s going on in the field: • Security: More information on security than previous editions • Wireless: A strong focus on wireless, including the revolutionary 802.11ac and 802.11ad standards, plus information on WLAN handoffs, Bluetooth profiles, cellular data service, and other wireless topics • Cloud Computing and BYOD: An emphasis on cloud computing and the BYOD (Bring Your Own Device) revolution • IPv6: The TCP/IP chapters offer more information on IPv6, an area in which interest has recently spiked among networking professionals Specifics include: ◦ Chapter 8 goes into more detail on the IPv6 header, the next header architecture of the packet, and the complex addressing scheme introduced with IPv6 章節目錄: Chapter 1: Welcome to the Cloud 1a: Hands On: A Few Internet Tools 1b: Design Exercise: A Small Home Network Chapter 2: Network Standards 2a: Wireshark Chapter 3: Network Security Chapter 4: Network and Security Management Chapter 5: Ethernet (802.3) Switched LANs 5a: Hands-On: Cutting and Connectorizing UTP Chapter 6: Wireless LANs I Chapter 7: Wireless LANs II Chapter 8: TCP/IP Internetworking I Chapter 9: TCP/IP Internetworking II Chapter 10: Wide Area Networks Chapter 11: Networked Applications
類似書籍推薦給您
【簡介】 第二版全面升級成全彩印刷,閱讀上更加美觀舒適! 內容也更新成最新技術,快速適應未來潮流! 「前端效能優化」最全面的書籍! 精通前端基礎和優化技術,為你打造高效能網站! 本書內容改編自第 13 屆 2021 iThome 鐵人賽,Modern Web 組冠軍網路系列文章──《今晚,我想來點 Web 前端效能優化大補帖!》。本書彙整了網頁前端應用效能優化的各種技巧,並以此為出發點,延伸至許多前端領域必備的知識。搭配簡易圖文和範例檔實作,讓你打造高效能的前端應用,解決網站效能痛點,提升速度與使用者體驗,增加網站曝光率與流量! 本次改版除了將一些過時的內容更新,以及新增新的章節以外,也驗證了大部分的篇章概念是不會因為前端技術本身或是 AI 的發展而變成無用的知識。作者希望透過「前端效能優化」這個主題協助讀者掌握前端開發裡的「底層邏輯」,在快速變化的前端領域掌握不變的核心概念,培養能夠快速適應未來改變的扎實基底! 專注底層邏輯才能永不過時! 讓你增進網站效能的四劑大補帖 ▍小細節讓效能UP 除了依賴指標,還要從對的地方著手! ▍前端開發心法 用對優化工具和技術,提升效能&使用者體驗。 ▍深入技術原理 介紹前端技術原理,精通前端應用知識。 ▍提供完整範例 跟著實作範例學習,強化前端優化技能! 【精彩內容】 •認識 Core Web Vitals、RAIL Model、Lighthouse 等指標和效能監測工具,找出效能不足的地方。 •建立前端必備知識:瀏覽器架構與渲染流程、網路與快取、JavaScript 記憶體管理機制,並學習正確的圖片資源、檔案壓縮與打包技術。 •在不同情境下使用正確的優化技術:Code Splitting、動態載入、Tree Shaking、模組化技巧、Web Workers 與 WebAssembly。 •使用 DevTool 檢測網站效能、實作 Debounce 與 Throttle,達到網站節流。 【目標讀者】 ✦想要了解各種效能優化技巧的前端開發者 ✦想要更理解前端開發底層知識的開發者 ✦想了解前端開發近期發展與未來趨勢的讀者 下載範例程式檔案 本書的程式碼是由GitHub託管,可點選下面圖案前往下載: github.com/kylemocode/f2e-performance-optimization-book-demo 專業推薦 「這本書是 Kyle 在 AI 時代前,對於經典前端技術的集大成之作,而在 AI 時代的考驗下,這些內容仍是歷久彌新,仍舊佔據我們日常開發技術決策的要角。」——John Liu(Engineering Manager @Netskope) 「距離上次出版已隔數年,作者仍深耕於前端領域,持續探索新技術,並用清晰的文字,梳理出複雜概念背後的脈絡。更難能可貴的是,他更長期投入於社群,帶領許多台灣的新血投入產業、啟發更多人熱愛前端。」——Lichin Lin(Design Engineer @GitHub) 「前端效能優化是一個永無止境的主題,因為技術一直在進步,使用者的期待也一直在提高。但我一直相信與其追求每一個細節都優化到極致,不如先建立正確的效能觀念,知道什麼時候該優化以及該優化什麼。我真心推薦你好好讀這本書,而且一定要動手實作,親自驗證書中提到的技術。」——高見龍(五倍學院 創辦人 & 院長) 【目錄】 推薦序一 推薦序二 推薦序三 第二版 自序 Ch00 寫在旅程之前,讓我們先理解底層邏輯 Ch01 認識前端效能優化與衡量指標 Planning And Metrics 1-1 前端效能優化為什麼如此重要? 1-2 效能的監控工具 ─ Performance Analyzers 1-3 衡量前端效能的重要指標:Core Web Vitals 1-4 從使用者的角度出發 ─ RAIL Model Ch02 網頁資源優化 Assets Optimization 2-1 程式碼最佳化 2-2 圖片資源最佳化 2-3 檔案壓縮 File Compression 2-4 可適性服務 Adaptive Serving Ch03 渲染流程優化 Render Process Optimization 3-1 瀏覽器的架構演進史 3-2 瀏覽器渲染引擎的運作機制 3-3 控制 Script 的載入時機 ─ Non-blocking Script 3-4 優化資源的載入時機 ─ Resource Hints 3-5 減輕渲染的負擔 ─ Virtualized List 3-6 延遲載入 Lazy Loading 3-7 CSS 也會影響效能!寫出高效能的 CSS 3-8 硬體加速 ─ CSS GPU Acceleration Ch04 組建流程優化 Build Process Optimization 4-1 拆分應用的 Bundle ─ Code Splitting & Dynamic Import 4-2 移除用不到的程式碼 ─ Tree Shaking 4-3 犧牲支援度減少 Bundle Size ─ Polyfill-less Bundling Script 4-4 現代打包工具 Ch05 快取與網路機制 Caching & Networking 5-1 前端必備快取知識 (1):HTTP Cache 5-2 前端必備快取知識 (2):Service Workers Cache 5-3 前端必備快取知識 (3):CDN 5-4 運用 Service Workers ─ Application Shell Architecture 5-5 使用 Stale While Revalidate 提供更好的使用者體驗 5-6 極限加速!升級 HTTP 版本 Ch06 初探 Web Workers 與 WebAssembly 6-1 讓主執行緒喘口氣吧 ─ Web Workers 6-2 讓 Web 充滿更多可能性 ─ WebAssembly Ch07 記憶體與渲染架構 Memory & Rendering Architecture 7-1 認識JavaScript 的記憶體管理機制 7-2 前端應用的各種渲染架構 Ch08 DevTool Debugging & 前端節流 8-1 善用DevTool 來監控網頁效能 ─ Runtime Performance Debugging 8-2 面對大量請求,前端可以做些什麼? Ch09 前端可觀測性Frontend Observability 9-1 什麼是 Frontend Observability? 9-2 前端可觀測性的獨特挑戰 9-3 前端可觀測性實作工具與策略 附錄 A 參考資源
類似書籍推薦給您
【簡介】 自動化測試一本就懂!學會真正落實自動化測試 掌握實踐方法及未來趨勢,提升實作技能 全方位帶你了解真實專案的專業自動化測試 【專業推薦】 無論你是手動測試工程師、自動化工程師,或是測試團隊管理者,都能在本書中找到能立即帶回工作場域的觀點、方法與解題思維。相信只要願意投入閱讀,一定能從中獲得推動品質升級的力量! ─ 江仁豪,SHOPLINE Head of Quality Assurance | OnedaySoftware 創辦人 本書絕不僅是工具教學,更是一套讓讀者成為高價值自動化測試工程師的實戰指南。我最喜歡每個章節中的「實務經驗實話說」,彷彿能看見Max在現場教學,與你討論他過去面臨的挑戰與解法。 ─ 彭師孝,91APP 產品發展處 產品品質部 資深經理 整本書章節脈絡清晰、節奏穩健,手把手帶領讀者逐步建構完整的自動化測試技術堆疊,是一本含金量極高的「自動化測試完全手冊」。建議別錯過任何一章,現在就捲起袖子跟著Max老師開始動手學吧! ─ 李信杰,國立成功大學 資訊工程學系副教授 【內容簡介】 ♚學習最佳測試:了解技術選擇、實踐方案及完整架構 ♚提升專業技術:打造從基礎語法到跨平台的完整能力 ♚拆解實務案例:了解真實場景如何打造及運作 ♚展望未來測試:分享AI應用與自動化測試挑戰 本書改編自第16屆iThome鐵人賽DevOps組佳作系列文章《建立應用程式UI自動化測試:以Robot Framework為例》。在快速迭代的軟體世界,自動化成為確保品質的高效方法之一。 本書是一本帶領讀者從入門邁向專業的自動化測試指南,從最初的觀念建立開始,帶大家理解自動化為何重要、何時該導入,並從Robot Framework進階技巧逐步延伸到Web與App跨平台自動化、測試報告整合、CI/CD,以及利用雲端裝置平台進行測試內容,以清楚的流程與大量的實務範例串連,協助讀者從基礎語法一路掌握跨平台的完整自動化能力,打造一套真正能落實的自動化測試體系。 作者在實務上多次負責規劃測試架構、重構測試流程、整合CI/CD與搭建跨平台自動化體系。本書將這些親身經歷過的實作成果與思考脈絡整理成系統化內容,透過案例示範與詳細步驟,帶領讀者在真實專案中落實自動化測試。 【目標讀者】 ✪想踏入⾃動化測試領域的初⼼者。 ✪想要參考其他框架範例的軟體測試⼈員。 ✪想知道測試工程師的思維的軟體開發者。 ✪想瞭解如何落實自動化測試的學⽣及職場轉型者。 【目錄】 |Chapter 01| 關於自動化測試 1.1 品質與測試的關係 1.2 關於自動化測試 1.3 自動化測試的ROI:如何衡量投資回報 1.4 小結 |Chapter 02| Robot Framework基礎 2.1 什麼是Robot Framework 2.2 安裝Robot Framework及設定開發環境 2.3 Robot Framework核心概念 2.4 Robot Framework變數 2.5 Robot Framework控制結構 2.6 斷言(Assertion) 2.7 跳脫(Escaping) 2.8 小結 |Chapter 03| Robot Framework進階應用 3.1 Robot Framework自定義Python keyword 3.2 Robot Framework Listeners 3.3 重新執行失敗的測試 3.4 執行平行測試 3.5 小結 |Chapter 04| 測試報告 4.1 為什麼我們需要測試報告 4.2 Robot Framework內建測試報告 4.3 與Allure整合來提升測試報告可讀性 4.4 與Robot Framework Metrics整合 4.5 與Robot Framework Dashboard整合 4.6 小結 |Chapter 05| 結合Playwright進行Web自動化測試 5.1 認識Playwright 5.2 Playwright環境設定 5.3 Robot Framework Browser(Playwright)三件套 5.4 網頁定位元件小技巧 5.5 Playwright進行Web自動化測試 5.6 建立高品質自動化測試專案架構 |Chapter 06| 結合Appium進行App自動化測試 6.1 認識Appium 6.2 Appium Android開發環境安裝 6.3 Appium Inspector安裝及操作介紹 6.4 Appium Session Capabilities介紹 6.5 App自動化測試定位元件方式 6.6 Appium iOS開發環境安裝 6.7 Appium進行App自動化測試 6.8 建立高品質自動化測試專案架構 |Chapter 07| 將自動化測試導入CI/CD流程中 7.1 什麼是CI/CD 7.2 Github Actions 7.3 自行架設GitHub Self-hosted Runners 7.4 GitHub Actions Secrets 7.5 將測試Robot Framework Playwright與GitHub Actions整合 |Chapter 08| 提升App測試效率:裝置農場 8.1 裝置農場(Device Farm) 8.2 雲端裝置平台:BrowserStack 8.3 開源裝置平台:Appium Device Farm |Chapter 09| 軟體自動化測試趨勢以及AI在測試領域的應用
類似書籍推薦給您
【簡介】 深入探討 Browser Web API 的最佳實踐 快速將學到的技能應用到實際開發中 本書內容改編自第 16 屆 iThome 鐵人賽JavaScript 組冠軍系列文章《可愛又迷人的 Web API》。作者整合比賽期間累積的範例與心得,以「一個 Browser Web API 即一個主題」的模組化架構呈現,讓讀者不用按照章節閱讀,能依需求即翻即用。每章均包含核心概念、瀏覽器支援、常見錯誤、替代方案與完整實作,並附進階優化技巧,兼顧新手入門與資深開發者的深入探索。 本書收錄的 Browser Web API,涵蓋地理定位、語音輸入輸出、背景計算、離線資料庫、動畫與性能監測等多元領域。透過範例程式碼、實戰情境與效能調校,讀者可快速將功能落地至專案,同時學會權限、安全與跨瀏覽器相容要點。書中也設計了「一分鐘概覽」與「踩雷區(Tips)」欄位,讓你在零碎時間也能迅速掌握精華,遠離常見陷阱。書中也幫大家整理所有的 Browser Web API(包含正式發佈與實驗中版本),幫助各位快速了解它們的特色,並能定位所需的工具。 若你正在尋找一部能兼具速查手冊與系統化學習路徑的中文 Browser Web API 指南,本書將成為你工作桌旁不可或缺的最佳夥伴,助你在競爭激烈的前端領域快一步升級。 本書特色 ✦ 實戰專案範例 從拆解需求到做出可執行的完整作品 ✦ 圖解串接流程 圖解教學一看就懂新手也能輕鬆上手 ✦ 主流兼容對策 搞定瀏覽器兼容跨平台體驗一致 ✦ 開發最佳實務 傳授開發最佳實踐高效避坑不踩雷 目標讀者 ● 對 JavaScript 有基礎認知,想知道 Browser Web API 能做到哪些運用的前端工程師 ● 想深入瞭解 Browser Web API,並希望能實作在專案上的前端工程師 專業推薦 這本《Browser Web API 攻略大全》,算是對當代瀏覽器 API 做了一次巡禮!即便已累積多年前端實戰經驗,對瀏覽器能做什麼已有概念,閱讀過程中仍時有驚喜。像是我驚訝地發現:瀏覽器居然內建持續追蹤使用者 GPS 位置的功能、可以用子母畫面播影片、能錄製並分享螢幕畫面、監聽某個 DOM 元素是否被更動,有沒有進入可視範圍……,刷新我對當代瀏覽器能力的認知。無論是作為工具書查找,或完整閱讀拓展知識,都能幫助你充分利用瀏覽器功能,打造更好的網頁體驗。──── 黑暗執行緒 這本書最大的價值在於,它不只教你怎麼用,更教你為什麼這樣做:許多人學習前端技術只是停留在表面,而 MUKI 會告訴你背後的原理。書中的語言通俗易懂,讓你在輕鬆閱讀的同時,吸收大量的知識;每一個概念都經過精心設計,讓你不會感到枯燥;內容與時俱進,從最新的 ES6 到各種 Web API,一應俱全。無論你是新手還是老手,都能從中獲得啟發。──── 奶綠茶|一個從 Flash 時代活到 AI 時代的前端工程師 我特別欣賞 MUKI 在每個 API 章節中設計的範例,兼顧簡潔與實用,不會流於複雜的「炫技」,也不會只是文件翻譯。這樣的風格,讓人讀來輕鬆,卻又收穫滿滿。如果你是剛踏入前端領域的開發者,它是你探索瀏覽器能力的最佳入門;如果你已經有一定經驗,這本書會幫你重構理解與思維,甚至激發你在互動應用上的靈感。誠摯推薦給每一位對網頁開發充滿熱情的朋友。──── Will 保哥|多奇數位創意 技術總監、Google Developer Expert、Microsoft MVP/RD 【目錄】 PART1 認識 Browser Web API 與資料查詢 CH01 什麼是 Web API? 深入理解 Web API 常見問題 本章回顧 CH02 查閱與使用 Browser Web API 的必備知識 如何有效查閱 Browser Web API 官方文件 如何判斷瀏覽器支援情況與相容性 常見問題 本章回顧 CH03 Browser Web API 索引與功能整理 Browser Web API 分類與簡介(從 A 到 X) 本章回顧 PART2 網站定位與路線追蹤應用 CH04 用 Geolocation API 取得與追蹤使用者地理位置 Geolocation API 的核心功能 檢查瀏覽器是否支援 Geolocation API 使用 getCurrentPosition() 取得當前位置 出現錯誤訊息:Only request geolocation information in response to a user gesture. 拒絕權限後該如何重新啟用 在地圖上顯示使用者所在位置 使用 watchPosition() 追蹤使用者的地理位置 模擬移動功能 常見問題 小結 本章回顧 CH05 用 Geolocation API 和 Leaflet Routing Machine 實作叫車服務功能 從位置追蹤到路線導航的完整流程 用 Leaflet 與 Routing Machine 建構叫車服務 開始模擬:模擬司機移動的過程 停止模擬 範例畫面 常見問題 小結 本章回顧 PART3 裝置功能與媒體應用實作 CH06 使用〈audio〉打造音樂播放器 嵌入音訊檔案 客製化播放器 用 CSS 調整滑桿樣式 建立音樂播放控制功能 實作小技巧 常見問題 小結 本章回顧 CH07 用〈video〉實作影音播放功能 Video 標籤的基本功能 顯示影片字幕 自訂子母畫面 處理影片緩衝與播放狀態 根據時間點加入互動提示 影片播放完畢後觸發其它動作 常見問題 小結 本章回顧 CH08 使用 Screen Capture API 取得你的螢幕畫面 擷取螢幕畫面 擷取聲音 偵測分享狀態 怎麼手動停止分享? 常見問題 小結 本章回顧 PART4 網頁介面操作與互動 CH09 用 Drag and Drop API 拖曳網頁元素 Drag and Drop API 介紹 如何實現拖放功能? Drag 拖放事件 Drag 運用範例 常見問題 小結 本章回顧 CH10 認識 History API:SPA 的關鍵技術之一 History API 做了什麼? 如何操作瀏覽器的歷史紀錄 實作 SPA 的頁面切換效果 非同步載入內容與深度連結應用 常見問題 小結 本章回顧 CH11 探索 Fullscreen API:從基礎到應用場景 請求和退出全螢幕模式 處理全螢幕狀態變化 在全螢幕模式調整樣式 單個元素或整頁變成全螢幕 替代方案 常見問題 小結 本章回顧 PART5 觀察與監控 DOM 的變化 CH12 如何使用 MutationObserver API 追蹤 DOM 的變化 如何使用 Mutation Observer 監聽 DOM 變動 MutationObserver API 基本範例 監控要動態載入的畫面 動態更新 UI 常見問題 小結 本章回顧 CH13 深入了解 Intersection Observer API 及其應用 為什麼需要 Intersection Observer? Intersection Observer 的基本語法 Options 屬性 監聽目標元素 根據使用者瀏覽行為,觸發互動提示 根據滑動的頁面修改選單顏色 延遲載入 JavaScript 常見問題 小結 本章回顧 PART6 語音、聊天與 AI 互動 CH14 使用 Web Speech API 讓網頁聽得懂我們說的話 做一個基本的語音識別功能 持續監聽使用者的語音輸入 監聽語音輸入的更多事件 實作語音搜尋系統 常見問題 小結 本章回顧 CH15 使用 Web Speech API 讓網頁開口說話 基本用法介紹 SpeechSynthesisUtterance 屬性介紹 SpeechSynthesisUtterance 事件介紹 實作動態語音選擇器 更自然的語音效果 常見問題 小結 本章回顧 CH16 用 Web Speech API 與你的 AI 朋友互動聊天 實作一個 AI 聊天好友 實現上下文記憶 將 AI 回應轉為語音播放 常見問題 小結 本章回顧 PART7 通知功能與後台推播應用 CH17 使用 Web Notifications API 幫網站加入通知功能 Web Notifications API 介紹 請求通知權限 建立與顯示通知 使用者與通知的互動 使用 Web Notifications API 要注意的事 搭配 Permissions API 進行權限管理 常見問題 小結 本章回顧 CH18 Web Notifications API 搭配 Service Workers 發送通知 什麼是 Service Workers? 如何使用 Service Workers 發送通知 使用開發者工具模擬推播 使用 Push Companion 測試背景推播 常見問題 小結 本章回顧 CH19 Web Notifications API 結合 Google Cloud 的應用 Google Cloud 在通知系統中的角色 在 Google Cloud 建立專案 在 Firebase 建立 Messaging 服務 使用 Firebase Console 發送測試訊息 發送或排程通知 常見問題 小結 本章回顧 PART8 網站效能與背景執行緒應用 CH20 使用 Web Workers API 走出自己的路 Web Workers 的類型與使用情境 常見問題 小結 本章回顧 CH21 Web Workers API 的限制與效能優化處理 Web Workers 的限制 必須同源才能通訊 支援部分 JavaScript API 效能優化建議 什麼時候適合使用 Web Worker? 常見問題 小結 本章回顧 CH22 管理 Web Worker 的生命週期與資源 重用 Web Worker,避免浪費資源 使用 terminate() 方法關閉不再需要的 Worker 建立 Worker Pool,有效管理 Worker 資源 替每個 Worker 指定名稱,以便於除錯或管理 使用效率較高的數據結構 JSON 與 ArrayBuffer 的差別 常見問題 小結 本章回顧 PART9 檔案處理與本地端資料庫管理 CH23 File API 的架構與應用 File API 的構造 取得檔案資訊:File/FileList 讀取檔案內容:FileReader Blob:建立自訂檔案資料 拖放與檔案預覽 常見問題 小結 本章回顧 CH24 另一種儲存資料的方式:IndexedDB API IndexedDB API 的特性與使用場景 在瀏覽器檢視 IndexedDB 資料 IndexedDB 的資料庫架構與核心概念 建立與初始化資料庫 IndexedDB 的 Transaction 機制 IndexedDB CRUD 操作實作 常見問題 小結 本章回顧 PART10 安全與即時通訊 CH25 使用 Web Cryptography API 提高網頁應用的安全性 對稱式與非對稱式加密介紹 試著生成一組密鑰 使用 AES-GCM 加密與解密資料 使用 RSA 加密與解密資料 常見問題 小結 本章回顧 CH26 使用 Google Cloud Run 架設 WebSocket Server 自己架設 WebSocket Server 的原因 在本地端啟動 WebSocket Server 並進行測試 建立 Google Cloud Run 專案 WebSocket 連線的困難點 主動檢查 WebSocket 的連線狀態 常見問題 小結 本章回顧 PART11 Browser Web API 組合技 CH27 用 WebSocket API 和 Canvas API 實作多人白板服務 使用到的 Browser Web API 架構設計 使用 Node.js + Fastify + ws 模組進行 WebSocket 通訊 使用 Canvas 即時取得筆畫資訊 分配不同顏色的畫筆 顯示線上人數 常見問題 小結 本章回顧 CH28 結合 File API 與 Web Speech API 製作文件閱讀器 使用到的 Browser Web API 使用 Page Visibility API 判斷當前頁面的可見性狀態 文件閱讀器 建立變數 常見問題 本章回顧 CH29 製作情緒追蹤器,以更好地理解自己 使用到的 Browser Web API 打造自己的情緒追蹤器 建立 IndexedDB 資料庫結構 網頁載入時初始化並顯示紀錄 取得使用者當前位置 讀取使用者上傳的檔案 儲存一筆新紀錄 顯示所有紀錄 常見問題 本章回顧 APPENDIX 附錄 附錄 A Browser Web API 的比較與選用建議 儲存資料 檔案上傳 通訊 擷取裝置的影像或聲音 語音互動 附錄 B 值得注意與追蹤的實驗性 Browser Web API File System Access API EyeDropper API Compute Pressure API HTML Sanitizer API
類似書籍推薦給您
【簡介】 最容易理解、讓初學者秒懂的範例解說! 最關鍵的完整範例,一個抵十個,重點觀念一次搞懂 最實務的程式碼練習,別再說網頁設計難以上手 ■ 內容再強化 -整合GitHub Copilot人工智慧輔助功能,加速程式編寫效率,體驗AI驅動的網頁開發流程。 -強化CSS3與HTML5最新特性詳解,掌握最新網頁技術趨勢,打造現代化行動網頁介面。 -多個超實務專案範例,從零開始一步步完成完整行動網頁設計作品。 ■ Visual Studio Code網頁編輯器入門教學 快速熟悉輕便型/專業型的熱門網站開發工具,搭配擴充套件大幅提升網頁建置效率。 ■ GitHub Copilot AI程式輔助工具 學習如何善用AI協作工具提高開發效率,讓你更輕鬆、更快速地完成網頁設計任務。 ■ 雲端版本控制服務GitHub應用 立刻掌握Git核心概念,透過GitHub輕鬆放置網頁作品、團隊協作,掌握業界實務技能。 ■ HTML5與CSS3核心技術詳解 圖文並茂,透過最淺顯易懂的範例說明,快速理解並奠定紮實的網頁開發基礎。 ■ 超實務響應式網頁設計範例(RWD) 多個完整且實用的專案實作範例,讓你徹底了解從零打造各種螢幕尺寸都完美呈現的網頁技巧。 Bootstrap 5語法教學,帶你迅速掌握框架語法,輕鬆建構美觀且功能完整的響應式網頁。 ■ 掌握主流響應式版面設計技巧 企業網頁/多欄式網頁/視差網頁/側欄固定網頁,最完整的範例說明,一次搞懂主流版面設計方式。 ■ 搭配範例邊學邊做更有效! 【目錄】 chapter 1 在 Visual Studio Code 上結合 GitHub Copilot 與 Git 1-1 Visual Studio Code 安裝與基本介紹 1-2 Visual Studio Code 延伸套件安裝教學 1-3 GitHub Copilot 簡介 1-4 GitHub Copilot 使用教學 1-5 Git 版本控制 1-6 視覺化介面操作 Git chapter 2 初學 HTML 2-1 何謂 HTML 2-2 HTML 文件架構 2-3 利用 GitHub Copilot 認識 HTML 標籤 2-4 全域屬性 2-5 瀏覽器除錯網頁教學 chapter 3 初學 CSS 3-1 何謂 CSS 3-2 DIV+CSS 排版法 3-3 利用 GitHub Copilot 輔助學習CSS 選擇器 3-4 CSS 語法的放置位置 3-5 繼承權與優先權 3-6 常見的 CSS 樣式 chapter 4 網頁建置流程與網頁設計 4-1 前置作業 4-2 套用 jQuery 4-3 網頁設計 4-4 響應式網頁設計 4-5 Media Queries 4-6 設定 Viewport chapter 5 利用 HTML+CSS 製作基本版型 5-1 單欄式版面 5-2 使用 GitHub Copilot 快速製作單欄式響應式版面 5-3 雙欄式版面 5-4 登入版面 chapter 6 初學 Bootstrap 5 6-1 認識 Bootstrap 6-2 認識網格系統 6-3 常用 Bootstrap 類別 chapter 7 使用 Bootstrap 5 開發響應式網站 7-1 首頁 7-2 關於我們 7-3 產品項目 7-4 產品細節 chapter 8 常見 Bootstrap 5 響應式版面教學 8-1 企業網頁 8-2 個人部落格 8-3 視差網頁 8-4 側欄固定網頁 chapter 9 網站公開展示 9-1 GitHub Pages 9-2 Cloudflare Pages
類似書籍推薦給您
【簡介】 應用程式安全是Web開發人員最關心的議題,無論是以前端框架開發使用者界面,還是建置後端伺服器,都需要洞悉威脅,並清楚掌握如何防止駭客佔上風。 本書內容涵蓋瀏覽器端和伺服器端的應用程式安全所需知識,是開發人員必讀寶典,書中提供經過驗證的技術,可適用於任何技術堆疊,並以作者親身經歷加以說明,讀者可學到必要實作的安全原則,甚至還能一窺駭客用來攻破系統的巧妙工具和技術。 本書包含: .安全第一的開發流程 .網頁應用程式中的加密技術 .供應鏈和API攻擊 .遭受駭客入侵時的因應之道 適合具備基本 Web 應用程式設計與相關技術知識的讀者。 來自專家的推薦 深入探討Web漏洞的『成因』,從駭客視角理解弱點如何被利用,進而有效保護自己的系統。 —— Sudesh Kannan,首席網路安全與隱私創新工程師 每位Web開發人員都應該瞭解的Web App安全知識。 —— Michael Piscatello於南新罕布夏大學 生動介紹安全威脅及解決方案,讓讀者瞭解背後的『原理』和『成因』。 —— Jaehyun Yeom於Bear Robotics 強烈推薦本書!裡頭還包括最新和最出色的程式範例。 —— Najeeb Arif於Thoughtworks 【目錄】 Chapter 1 瞭解對手 1.1 駭客攻擊的原因和手法 1.2 遭受駭客攻擊的後果 1.3 小心謹慎、未雨綢繆 1.4 瞭解防護重點 Chapter 2 瀏覽器端的安全性 2.1 瀏覽器的組成 2.2 JavaScript沙盒 2.3 磁碟存取權 2.4 Cookies 2.5 跨站追蹤 Chapter 3 加密 3.1 加密原理 3.2 加密金鑰 3.3 加密傳輸 3.4 靜態加密 3.5 完整性檢查 Chapter 4 Web 伺服器的安全 4.1 檢驗輸入的內容 58 4.2 轉義輸出內容 4.3 正確處理資源 4.4 具象狀態轉換(REST) 4.5 縱深防禦 4.6 最小權限原則 Chapter 5 安全是一種程序 5.1 應用四眼原則 5.2 在流程中套用最小權限原則 5.3 盡可能採用自動化作業 5.4 不重新發明輪子 5.5 保留稽核軌跡 5.6 撰寫安全的程式碼 5.7 借助工具保護自己 5.8 坦誠過失 Chapter 6 瀏覽器端的漏洞 6.1 跨站腳本 6.2 跨站請求偽造 6.3 點擊劫持 6.4 跨站腳本引入 Chapter 7 網路的漏洞 7.1 中間人漏洞 7.2 誤導型漏洞 7.3 憑證上的漏洞 7.4 竊取加解密金鑰 Chapter 8 身分驗證機制的漏洞 8.1 暴力攻擊 8.2 單一登入 8.3 強化身分驗證能力 8.4 多因子身分驗證 8.5 生物特徵識別 8.6 身分憑據的保存方式 8.7 使用者枚舉 Chapter 9 Session 管理的漏洞 9.1 Session 的運作原理 9.2 Session 劫持 9.3 Session 竄改 Chapter 10 授權機制的漏洞 10.1 為授權建模 10.2 設計授權機制 10.3 實作存取控制 10.4 測試授權機制 10.5 常見的授權缺失 Chapter 11 資料載荷上的漏洞 11.1 反序列化攻擊 11.2 XML 的漏洞 11.3 檔案上傳的漏洞 11.4 路徑遍歷 11.5 批量賦值 Chapter 12 注入型漏洞 12.1 遠端程式碼執行 12.2 SQL 注入 12.3 NoSQL 注入 12.4 LDAP 注入 12.5 命令注入 12.6 CRLF 注入 12.7 Regex 注入 Chapter 13 第三方程式裡的漏洞 13.1 依賴項 13.2 堆疊的更下層 13.3 資訊外洩 13.4 不安全的組態 Chapter 14 不知情的幫凶 14.1 伺服器端請求偽造(SSRF) 14.2 電子郵件詐欺 14.3 開放式重導向 Chapter 15 遭駭時的處置之道 15.1 知道何時被攻擊 15.2 阻止進行中的攻擊 15.3 釐清來龍去脈 15.4 避免重蹈覆轍 15.5 向使用者傳達入侵事件的細節 15.6 降低未來被入侵的風險