Chrome UA字符串即將淘汰!Dynamic Web TWAIN已作出相應(yīng)調(diào)整!
Dynamic Web TWAIN是一個(gè)專為Web應(yīng)用程序設(shè)計(jì)的TWAIN掃描識(shí)別控件。你只需在TWAIN接口寫幾行代碼,就可以用兼容TWAIN的掃描儀掃描文檔或從數(shù)碼相機(jī)/采集卡中獲取圖像。然后用戶可以編輯圖像并將圖像保存為多種格式,用戶可保存圖像到遠(yuǎn)程數(shù)據(jù)庫(kù)或者SharePoint。這個(gè)TWAIN控件還支持上傳和處理本地圖像。
點(diǎn)擊下載Dynamic Web TWAIN正式版
Google已宣布,良好的舊用戶代理字符串將于今年晚些時(shí)候在Chrome瀏覽器中棄用。此更改將提供更好的監(jiān)視功能,并讓人們知道誰(shuí)在使用此信息,并最終改善最終用戶的隱私。值得一提的是,目前,此淘汰工作仍處于試驗(yàn)階段,其實(shí)現(xiàn)可能會(huì)在下一版Chrome中發(fā)生變化。請(qǐng)務(wù)必注意即將發(fā)生的變化,并了解它可能會(huì)如何影響您的Web應(yīng)用程序。
什么是用戶代理(UA)
用戶代理(UA)是一個(gè)字符串,包含有關(guān)客戶端瀏覽器及其運(yùn)行平臺(tái)的信息和詳細(xì)信息。UA包含在瀏覽器發(fā)送的每個(gè)請(qǐng)求中,并以多種方式和出于各種目的依賴于許多站點(diǎn)。網(wǎng)絡(luò)應(yīng)用程序使用它來(lái)為客戶提供相關(guān)的網(wǎng)站格式,針對(duì)臺(tái)式機(jī)或移動(dòng)設(shè)備的優(yōu)化方式以及根據(jù)客戶的瀏覽器等自定義頁(yè)面內(nèi)容。
發(fā)生了什么變化
Google計(jì)劃在明年逐步減少將在UA字符串中存儲(chǔ)的信息。請(qǐng)記住,Google不會(huì)停止或阻止跟蹤和收集最終用戶瀏覽器和平臺(tái)信息的功能,但是它將使其更安全,更容易跟蹤。逐步淘汰將在明年進(jìn)行。
如何為變化做準(zhǔn)備
Web開發(fā)非常復(fù)雜,并且變化迅速,這要求開發(fā)人員保持最新狀態(tài)。幸運(yùn)的是,我們?cè)谶@里可以幫助您瀏覽不斷變化的Web環(huán)境,并為適應(yīng)這些變化做好準(zhǔn)備。
Dynamsoft的產(chǎn)品之一,SDK Dynamic Web TWAIN,利用用戶代理字符串執(zhí)行運(yùn)行時(shí)環(huán)境檢測(cè),此更改將對(duì)該庫(kù)產(chǎn)生某些影響。
對(duì)于將來(lái)的Chrome版本,我們將檢查是否存在新的API userAgentData。如果userAgentData不存在,則表明瀏覽器仍在使用舊的舊版userAgent API,則該庫(kù)將以與以前相同的方式繼續(xù)沿舊路徑運(yùn)行。 否則,我們將使用userAgentData在新的工作流程中進(jìn)行環(huán)境檢測(cè),如下所示。
首先,我們使用以下代碼行來(lái)確定瀏覽器是否在移動(dòng)設(shè)備上運(yùn)行:
navigator.userAgentData.mobile?
接下來(lái),我們使用以下代碼行獲取瀏覽器名稱和版本:
var _browser = navigator.userAgentData.uaList[0].brand.toLowerCase(); var _browserVersion = navigator.userAgentData.uaList[0].version;
最后,我們使用以下代碼片段獲取操作系統(tǒng)信息:
navigator.userAgentData.getHighEntropyValues([? ?? ?"platform", ? ? ? ?? ?? ?"platformVersion", ?? ? ?? ?"architecture" ?? ??? ??? ? ]).then(function(highEntData){? ?? ?var _platform = highEntData.platform.toLowerCase(); ?? ?var _platformVersion = highEntData.platformVersion; ?? ?var _architecture = highEntData.architecture.toLowerCase(); })
通過(guò)上述實(shí)現(xiàn),我們確保該庫(kù)在將來(lái)的Chrome版本和當(dāng)前/舊版本的Chrome中都可以繼續(xù)正常運(yùn)行。我們將繼續(xù)監(jiān)視Google的新實(shí)施,并在發(fā)生新變化時(shí)更新本文。