国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JS魔法堂:不完全國際化&本地化手冊(cè) 之 拓展篇

Karuru / 2464人閱讀

摘要:前言最近加入到新項(xiàng)目組負(fù)責(zé)前端技術(shù)預(yù)研和選型,其中涉及到一個(gè)熟悉又陌生的需求國際化本地化。因此不是表示存在多個(gè)選擇而是表示沒有適合的選項(xiàng)。

前言

?最近加入到新項(xiàng)目組負(fù)責(zé)前端技術(shù)預(yù)研和選型,其中涉及到一個(gè)熟悉又陌生的需求——國際化&本地化。熟悉的是之前的項(xiàng)目也玩過,陌生的是之前的實(shí)現(xiàn)僅僅停留在"有"的階段而已。趁著這個(gè)機(jī)會(huì)好好學(xué)習(xí)整理一下,為后面的技術(shù)選型做準(zhǔn)備。
?本篇作為系列的最后一篇,打算和大家一起看看HTTP的Content Negotiation機(jī)制和更多關(guān)于本地化的應(yīng)用方向。

Content Negotiation(內(nèi)容協(xié)同)

?記得第一次接觸國際化和本地化時(shí)是指服務(wù)端根據(jù)請(qǐng)求頭字段Accept-Language獲取language-tag然后向用戶返回相應(yīng)的內(nèi)容,這其實(shí)是利用HTTP提供的Content Negotiation機(jī)制。
?所謂Content Negotiation機(jī)制其實(shí)就是通過Accept,Accept-LanguageAccept-Encoding等請(qǐng)求頭字段作為依據(jù)對(duì)存在多個(gè)可用展現(xiàn)方式的某一資源選擇最優(yōu)的展現(xiàn)方式返回給用戶,如語言文化、適合在屏幕上瀏覽還是用于打印等。
?這里又分為服務(wù)端協(xié)商(Server-driven Negotiation)和代理端協(xié)商(Agent-driven Negotiation)

Server-driven Negotiation
?就是擇優(yōu)返回展現(xiàn)方式的算法由服務(wù)端提供的Content Negotiation就是Server-driven Negotiation了。

?一般通過Accept,Accept-Language,Accept-EncodingUser-Agent等請(qǐng)求頭字段作為依據(jù)去選擇最優(yōu)解。
缺點(diǎn):

服務(wù)端永遠(yuǎn)無法精準(zhǔn)地計(jì)算出最優(yōu)解,部分原因是因?yàn)閮?nèi)容如何展現(xiàn)是由代理端決定,而請(qǐng)求中無法獲取代理端的所有信息,若允許獲取代理端的所有信息,那么網(wǎng)絡(luò)傳送的數(shù)據(jù)量將變大而且會(huì)涉及隱私安全的問題;

服務(wù)端實(shí)現(xiàn)復(fù)雜度提高;

由于對(duì)于同一個(gè)url可能會(huì)返回不同的響應(yīng)報(bào)文,因此不能利用公用的緩存去暫存響應(yīng)報(bào)文,從而喪失進(jìn)一步的優(yōu)化空間。

Agent-driven Negotiation
?就是代理端從服務(wù)端接收到一個(gè)基本的響應(yīng)后,然后擇優(yōu)展現(xiàn)方式的算法由代理端(實(shí)際上就是讓用戶自行選擇最優(yōu)展現(xiàn)方式)提供的Content Negotiation就是Agent-driven Negotiation了。

?注意這里是先從服務(wù)端接收一個(gè)基本的響應(yīng),然后代理根據(jù)這個(gè)響應(yīng)再計(jì)算最優(yōu)的展現(xiàn)方式。那么這個(gè)基本的響應(yīng)是什么呢?HTTP/1.1定義300(Multiple Choices)和406(Not Acceptable)兩個(gè)HTTP status code來通知代理端這個(gè)請(qǐng)求是的采用Agent-driven Negotiation.
?300 Multiple Choices
?當(dāng)請(qǐng)求的資源在多個(gè)位置找到時(shí),這些位置將以列表的形式作為響應(yīng)報(bào)文返回給用戶,由用戶自行選擇具體要訪問哪個(gè)位置。若服務(wù)端打算推薦某個(gè)位置作為優(yōu)先選擇時(shí),可將該位置作為響應(yīng)頭字段Location的值返回.

?406 Not Acceptable
?當(dāng)服務(wù)端發(fā)現(xiàn)無法滿足請(qǐng)求頭的Accept,Accept-Charset,Accept-EncodingAccept-Language時(shí),則會(huì)返回406狀態(tài)編碼。因此406不是表示存在多個(gè)選擇而是表示沒有適合的選項(xiàng)。
缺點(diǎn):

經(jīng)過代理端計(jì)算后,需要發(fā)起第二個(gè)請(qǐng)求來獲取最優(yōu)展現(xiàn)形式的具體內(nèi)容,響應(yīng)延遲提高。
?綜合上述兩種方式得到一種稱為透明協(xié)商(Transparent Negotiation)的方式,其實(shí)就是對(duì)緩存系統(tǒng)作修改,讓其除URL外還可以識(shí)別其他請(qǐng)求頭字段等信息,來映射特定展現(xiàn)方式的響應(yīng)報(bào)文。也就是說擇優(yōu)算法部分還是由服務(wù)端提供。

這里看來國際化/本地化是Content Negotiation的子集哦!

樣式因文化而不同 by :lang

Selectors Level 4已經(jīng)加入對(duì)BCP 47高級(jí)匹配算法的支持,即有以下玩法


En janvier, toutes les boutiques de Londres affichent des panneaux SALE, mais en fait ces magasins sont bien propres!

BIG SALE


甚至還有支持通配符*(雖然現(xiàn)在未被瀏覽器支持)


Hi guy!

Hi man!

總結(jié)

本系列粗略歸納了國際化&本地化相關(guān)內(nèi)容,若有紕漏請(qǐng)各位指正,謝謝!
尊重原創(chuàng),轉(zhuǎn)載請(qǐng)注明來自: http://www.cnblogs.com/fsjohn... ^_^肥仔John

感謝

HTTP 請(qǐng)求406如何解決?有截圖
趣解HTTP狀態(tài)碼

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/80526.html

相關(guān)文章

  • JS魔法:完全際化&地化手冊(cè) 實(shí)戰(zhàn)

    摘要:前言最近加入到新項(xiàng)目組負(fù)責(zé)前端技術(shù)預(yù)研和選型,其中涉及到一個(gè)熟悉又陌生的需求國際化本地化。注意蘋果官網(wǎng)采用的是的機(jī)制提供本地化功能,和本篇主打前端實(shí)現(xiàn)有所區(qū)別。它們分別是處理排序的處理日期格式化的和處理數(shù)字貨幣等格式化的。 前言 ?最近加入到新項(xiàng)目組負(fù)責(zé)前端技術(shù)預(yù)研和選型,其中涉及到一個(gè)熟悉又陌生的需求——國際化&本地化。熟悉的是之前的項(xiàng)目也玩過,陌生的是之前的實(shí)現(xiàn)僅僅停留在有的階段而...

    paraller 評(píng)論0 收藏0
  • JS魔法:完全際化&地化手冊(cè) 理論

    摘要:前言最近加入到新項(xiàng)目組負(fù)責(zé)前端技術(shù)預(yù)研和選型,其中涉及到一個(gè)熟悉又陌生的需求國際化本地化。本篇將闡述國際化和本地化的概念,以及其中一個(gè)很重要的概念也叫或。語法注意一般采用首字母大寫,后續(xù)字母全小寫指定與國家地域?qū)?yīng)的語言方言文化。 前言 ?最近加入到新項(xiàng)目組負(fù)責(zé)前端技術(shù)預(yù)研和選型,其中涉及到一個(gè)熟悉又陌生的需求——國際化&本地化。熟悉的是之前的項(xiàng)目也玩過,陌生的是之前的實(shí)現(xiàn)僅僅停留在有...

    yacheng 評(píng)論0 收藏0
  • JS魔法實(shí)戰(zhàn):純前端的圖片預(yù)覽

    摘要:一前言圖片上傳是一個(gè)普通不過的功能,而圖片預(yù)覽就是就是上傳功能中必不可少的子功能了。偶然從上找到純前端圖片預(yù)覽的相關(guān)資料,經(jīng)過整理后記錄下來以便日后查閱。類型為,表示在讀取文件時(shí)發(fā)生的錯(cuò)誤,只讀。 一、前言   圖片上傳是一個(gè)普通不過的功能,而圖片預(yù)覽就是就是上傳功能中必不可少的子功能了。在這之前,我曾經(jīng)通過訂閱input[type=file]元素的onchange事件,一旦更改路徑...

    岳光 評(píng)論0 收藏0
  • CSS魔法:重拾Border——圖片作邊框

    摘要:一鋪搞定一鋪清袋粵語的一鋪搞定其實(shí)就是一次完成全部工作的意思,上面關(guān)于的屬性,要是每次都逐個(gè)設(shè)置那要敲多少次鍵盤啊。。。語法粵語的一鋪清袋其實(shí)就是把之前的成果一次性歸零。 前言 ?當(dāng)CSS3推出border-radius屬性時(shí)我們是那么欣喜若狂啊,一想到終于不用再添加額外元素來模擬圓角了,但發(fā)現(xiàn)border-radius還分水平半徑和垂直半徑,然后又發(fā)現(xiàn)border-top-left/...

    linkFly 評(píng)論0 收藏0
  • CSS魔法:重拾Border——更廣闊的遐想

    摘要:也就是說我們操作的幾何公式中的未知變量,而具體的畫圖操作則由渲染引擎處理,而不是我們苦苦哀求設(shè)計(jì)師幫忙。 前言 ?當(dāng)CSS3推出border-radius屬性時(shí)我們是那么欣喜若狂啊,一想到終于不用再添加額外元素來模擬圓角了,但發(fā)現(xiàn)border-radius還分水平半徑和垂直半徑,然后又發(fā)現(xiàn)border-top-left/right-radius的水平半徑之和大于元素寬度時(shí),實(shí)際值會(huì)按比...

    lily_wang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<