No passado, escrevi um pequeno projeto experimental da web quando trabalhava em uma empresa de software estrangeira. Parte do requisito era oferecer suporte a vários idiomas (chinês simplificado, chinês tradicional, inglês, coreano, japonês) para o usuário. Naquela época, a tecnologia de modelo foi usada para implementá-lo. Este requisito é atendido e as configurações do usuário são salvas por meio de cookies. No entanto, o usuário ainda precisa selecionar o idioma ao fazer login pela primeira vez (ou após excluir os cookies). ). Então, pode ser mais conveniente para os usuários? Um programa pode ser usado para ajudar automaticamente na seleção?
A resposta é sim, todo mundo está usando o Google. Se você usar o sistema chinês para abrir a página inicial do Google, a página inicial em chinês será aberta naturalmente, e não em outros idiomas. Porque o Google determinará automaticamente qual é o idioma preferido para o sistema do usuário.
Como podemos fazer isso como o Google? Na verdade, é muito simples.
As informações dos cabeçalhos HTTP enviadas pelo navegador ao servidor da web contêm informações como Accept-Language. Essas informações são o idioma em Ferramentas-> Opções da Internet-> Geral no navegador. servidor, que pode ser uma lista priorizada de vários idiomas aceitáveis.
Deixe-me tomar o ASP como exemplo para apresentar brevemente "como determinar automaticamente o idioma do usuário":
<%
Função RegExpTest(patrn, string)
Dim regEx,Match,Matches' cria variáveis.
Definir regEx = Novo RegExp' Crie uma expressão regular.
regEx.Pattern = patrn' define o padrão.
regEx.IgnoreCase = True' define se os caracteres diferenciam maiúsculas de minúsculas.
regEx.Global = True'Define a disponibilidade global.
Definir correspondências = regEx.Execute(strng)'Executar pesquisa.
For Each Match in Matches' itera pela coleção de correspondências.
RetStr = RetStr&Match.Value
Próximo
RegExpTest = RetStr
Função final
AL = Request.ServerVariables("HTTP_ACCEPT_LANGUAGE")' Obtenha os parâmetros de idioma aceitáveis do navegador do usuário
LG = RegExpTest("^[az-]+",AL)' Obtenha as preferências de idioma aceitáveis do navegador do usuário
selecione o caso LG
caso "zh-cn"
resposta.write "中文(中国)"
caso "zh-tw"
resposta.escrever "Chinês (Taiwan)"
caso "zh-mo"
response.write "Chinês (RAE de Macau)"
caso "zh-hk"
response.write "Chinês (RAE de Hong Kong)"
caso "zh-sg"
response.write "Chinês (Cingapura)"
caso "en-us"
response.write "Inglês (Estados Unidos)"
caso "ja"
resposta.escreva "japonês"
caso "ko"
resposta.escrever "Coreano"
final selecionar
%>