在幾乎每個版本的 Chrome 中,我們都會看到產品、效能以及網路平台的大量更新和改善項目。本文說明 Chrome 52 版的異動內容,我們在 6 月 9 日推出了 Beta 版。這份清單內容隨時可能有所變動。
逐步淘汰 DHE 加密金鑰
重點摘要:Chrome 53 桌面版已移除 DHE 架構的加密法,因為這些加密法無法長期使用。伺服器應採用 ECDHE (如有),否則應採用純 RRSA 加密。
Intent to Remove | Chromestatus 追蹤工具 | Chromium 錯誤
去年 Chrome 採用 TLS Diffie-Hellman 群組的最低規模,從 512 位元到 1024 位元;不過,1024 位元版本並不足以長期使用。指標報告指出,Chrome 偵測到的 DHE 連線中,約有 95% 使用 1024 位元 DHE。這項限制加上 TLS 中 DHE 的協商方式,使得難以超越 1024 位元。
雖然有可修正此問題的規格草稿,但仍屬於草稿階段,需要同時變更用戶端和伺服器。同時,ECDHE 也已廣泛實作及部署。伺服器應升級至 ECDHE (如有)。否則,請確保已啟用純 RSA 加密套件。
自 Chrome 51 起,以 DHE 為基礎的密碼已淘汰。在 Chrome 53 中,我們將移除電腦版的支援功能。
FileError 淘汰警告
重點摘要:Chrome 54 預計會移除已淘汰的 FileError
介面。將 err
.code
的參照替換為 err
.name
和 err
.message
。
Intent to Remove | Chromestatus 追蹤工具 | Chromium 錯誤
目前版本的 File API 標準不包含 FileError
介面,且該介面已於 2013 年停用。在 Chrome 53 中,開發人員工具主控台會顯示以下淘汰警告:
「FileError」已淘汰,並將在 54 版中移除。請使用錯誤的「name」或「message」屬性,而非「code」。
這在不同情況下會產生不同的效果。
FileReader.error
和FileWriter.error
會是DOMException
物件,而非FileError
物件。- 如果是非同步
FileSystem
呼叫,ErrorCallback
會傳遞FileError.ErrorCode
,而不是FileError
。 - 對於同步
FileSystem
呼叫,系統會擲回FileError.ErrorCode
,而非FileError
。
這項變更只會影響依賴直接比較錯誤例項程式碼 (e.code
) 與 FileError
列舉值 (FileError.NOT_FOUND_ERR
等) 的程式碼。針對硬式編碼常數 (例如 e.code === 1
) 進行測試的程式碼,可能會向使用者回報錯誤的錯誤。
幸好,FileError
、DOMError
和 DOMException
錯誤類型都共用 name
和 message
屬性,可為錯誤情況 (也就是 e.name === "NotFoundError"
) 提供一致的名稱。程式碼應改用這些屬性,這些屬性可以在不同瀏覽器上運作,而且在 FileError
介面移除後會繼續運作。
FileError
預計會在 Chrome 54 中移除。
移除 <input type=search> 的結果屬性
重點摘要:results
屬性會遭到移除,因為該屬性不屬於任何標準,且在各瀏覽器中實作方式不一致。
意圖移除意圖 | Chrome 狀態追蹤工具 | Chromium 錯誤
results
值僅在 webkit 中實作,且在實作此值的瀏覽器中,其行為表現不一致。舉例來說,Chrome 會在輸入框中加入放大鏡圖示,而 Safari 桌面版則會透過點選放大鏡圖示,控制彈出式視窗中顯示的先前搜尋次數。由於這不是任何標準,因此即將淘汰。
如果您仍需在輸入欄位中加入搜尋圖示,您還需要為元素新增自訂樣式。方法是加入背景圖片,並在輸入欄位上指定左邊邊距。
input[type=search] {
background: url(some-great-icon.png) no-repeat scroll 15px 15px;
padding-left:30px;
}
```
This attribute has been deprecated since Chrome 51.