在幾乎所有版本的 Chrome 中,我們都看到產品、效能和網路平台功能的更新和改善幅度相當顯著。本文將說明 Chrome 52 的變更內容,該版本目前為 6 月 9 日的 Beta 版。這份清單內容隨時可能有所變動。
逐步停用 DHE 加密金鑰
重點摘要:Chrome 53 桌面版已移除 DHE 加密法,因為這些加密法無法長期使用。伺服器應採用 ECDHE (如果可用),或採用 plain-RSA 加密 (如果無法使用)。
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
屬性會遭到移除,因為該屬性不屬於任何標準,且在各瀏覽器中實作方式不一致。
Intent to Remove | Chromestatus Tracker | Chromium Bug
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.