2012-04-16 24 views
0

我试图根据useragent对要显示的内容(消息)做出此决定。当我用户查询参数或元标记时,一切工作正常。它也可以在Firefox中正常工作。在Firefox中,我将语言从英语更改为法语,重新加载页面,所有内容都正确显示。这是基于useragent。如果我在chrome/IE中加载页面,我只能使用默认(英文)。如果我将系统语言设置为法语(我的其他语言),那么一切似乎都可以正常工作。为什么在Chrome和IE中设置语言的任何想法都没有影响没有内容?我验证了这些标题,并且正在为法国内容提出请求?我错过了什么?内容未以正确的语言显示

我gwt.xml文件是基于一个我发现这里http://code.google.com/p/google-web-toolkit/source/browse/releases/2.3/user/src/com/google/gwt/i18n/I18N.gwt.xml

这是我的理解是所有我需要添加了下面我gwt.xml 一套配置属性名=“区域.useragent“value =”Y“

另外我发现以下Why does GWT ignore browser locale?这似乎表明它不会在IE中工作,但铬怎么样?

回答

1

http://code.google.com/p/google-web-toolkit/issues/detail?id=4228

TL; DR:有让你看在JavaScript中的信息没有可靠的方法,该navigator对象为您提供了浏览器的语言环境(即用于浏览器本身的菜单中的一个等),而不是用户的语言偏好(Firefox除外)。
最好的办法是使用动态主机页面,并根据请求头(即内容协商)在服务器上生成相应的<meta>