高山流水
msgbartop
动之则分,静之则合,无过不及,随曲就伸。
msgbarbottom

07 三 07 根据用户浏览器语言向用户显示合适的页面

我们的用户来自五湖四海,一个成功的网站,应该具备多种语言版本以适应不同国家的用户。一些网站的做法是提供了语言选择的链接,一些网站则直接根据用户所使用的语言直接跳转到相应的页面。

要知道用户所使用的语言,一个简单的办法就是根据Http
Request信息检测到用户所使用的浏览器的语言代码。知道了用户所使用的语言,即可跳转到相应语言版本的页面对用户请求进行反馈。

在ASP中,我们可以通过Request对象的ServerVariables集合中的HTTP_ACCEPT_LANGUAGE值获得我们想要的语言信息,下面是一个用ASP写成的简单的跳转例子。

‘获取客户端浏览器HTTP_ACCEPT_LANGUAGE值

strArea =
Request.ServerVariables(”HTTP_ACCEPT_LANGUAGE”)


‘将该值转为小写


strArea =
Lcase(strArea)


‘取该值前两位

strArea =
Left(strArea,2)


if
StrComp(strArea,”zh”)=0 then

Response.Redirect(”cn/index.asp”)

else

Response.Redirect(”en/index.asp”)

end if

HTTP_ACCEPT_LANGUAGE的相关值如下:

Afrikaans (af)

Albanian (sq)

Basque (eu)

Bulgarian (bg)

Byelorussian (be)

Catalan (ca)

Chinese (zh)

Chinese/China (zh-cn)

Chinese/Taiwan (zh-tw)

Chinese/Hong Kong (zh-hk)

Chinese/singapore (zh-sg)

Croatian (hr)

Czech (cs)

Danish (da)

Dutch (nl)

Dutch/Belgium (nl-be)

English (en)

English/United Kingdom (en-gb)

English/United Satates (en-us)

English/Australian (en-au)

English/Canada (en-ca)

English/New Zealand (en-nz)

English/Ireland (en-ie)

English/South Africa (en-za)

English/Jamaica (en-jm)

English/Belize (en-bz)

English/Trinidad (en-tt)

Estonian (et)

Faeroese (fo)

Farsi (fa)

Finnish (fi)

French (fr)

French/Belgium (fr-be)

French/France (fr-fr)

French/Switzerland (fr-ch)

French/Canada (fr-ca)

French/Luxembourg (fr-lu)

Gaelic (gd)

Galician (gl)

German (de)

German/Austria (de-at)

German/Germany (de-de)

German/Switzerland (de-ch)

German/Luxembourg (de-lu)

German/Liechtenstein (de-li)

Greek (el)

Hindi (hi)

Hungarian (hu)

Icelandic (is)

Indonesian (id or in)

Irish (ga)

Italian (it)

Italian/ Switzerland (it-ch)

Japanese (ja)

Korean (ko)

Latvian (lv)

Lithuanian (lt)

Macedonian (mk)

Malaysian (ms)

Maltese (mt)

Norwegian (no)

Polish (pl)

Portuguese (pt)

Portuguese/Brazil (pt-br)

Rhaeto-Romanic (rm)

Romanian (ro)

Romanian/Moldavia (ro-mo)

Russian (ru)

Russian /Moldavia (ru-mo)

Scots Gaelic (gd)

Serbian (sr)

Slovack (sk)

Slovenian (sl)

Sorbian (sb)

Spanish (es or es-do)

Spanish/Argentina (es-ar)

Spanish/Colombia (es-co)

Spanish/Mexico (es-mx)

Spanish/Spain (es-es)

Spanish/Guatemala (es-gt)

Spanish/Costa Rica (es-cr)

Spanish/Panama (es-pa)

Spanish/Venezuela (es-ve)

Spanish/Peru (es-pe)

Spanish/Ecuador (es-ec)

Spanish/Chile (es-cl)

Spanish/Uruguay (es-uy)

Spanish/Paraguay (es-py)

Spanish/Bolivia (es-bo)

Spanish/El salvador (es-sv)

Spanish/Honduras (es-hn)

Spanish/Nicaragua (es-ni)

Spanish/Puerto Rico (es-pr)

Sutu (sx)

Swedish (sv)

Swedish/Findland (sv-fi)

Thai (ts)

Tswana (tn)

Turkish (tr)

Ukrainian (uk)

Urdu (ur)

Vietnamese (vi)

Xshosa (xh)

Yiddish (ji)

Zulu (zu)

Tags: , , , ,