1
13
这里的解决方案是如此简单,开发人员做任何其他事情都很烦人。
|
2
4
如果本地化设置可用(包括但不限于HTTP接受语言头),那么网站绝对应该尊重它们。 反对这一观点的常见论据是,“普通用户”不够聪明,无法找到语言设置并将其配置为与自己的偏好匹配,因此这些设置往往是不正确的(除非用户恰好在美国境内)。 这是错误的解决方案。 如果用户群体中有相当一部分找不到(或无法费心找到)浏览器的语言设置,则正确的回答是 让他们更容易找到 ,而不是让网站忽略设置的内容。也许可以直接从程序的顶级菜单访问语言设置,而不是将其隐藏在过于复杂的“首选项”对话框中。可能在程序第一次运行时要求语言首选项。也许可以使用操作系统的本地化设置。或者可能是完全不同的东西,如果这是需要的,使它接近确定浏览器将发送关于用户首选项的正确信息。但不要只是举手,说“这是无用的,不能修复!”,忽略它。 其他的答案也提到了让用户在他们的站点配置文件中选择一种语言或区域设置,这一点也很重要,绝对应该是标准的,但这只是为了提供一个特定于站点的覆盖,以覆盖用户的正常设置。但是,如果用户没有在站点上覆盖此项,则正确的操作是默认为浏览器设置中指定的最首选的可用语言/区域设置,而不是基于其IP地址的地理位置。 |
3
3
在我的职业生涯中,我曾经维护过部分TCP/IP堆栈。这使我处于一个非常了解IP地址不应该被用作网络层地址以外的任何其他地址的罕见位置。IP地址和位置之间的任何关联都是巧合——这是地址分布方式的产物,而不是IP地址的任何基本部分。 (它们也不能作为计算机的唯一标识符,但情况不同) 我建议把地理位置排除在外。HTTP标准包括浏览器或其他用户代理在每个请求中包含用户区域性首选项的方法(记住,它是加权首选项列表,不一定只有一种区域性)。因为浏览器比您更接近用户,所以您应该遵守这个请求,至少作为默认请求。 然后允许用户临时或永久地更改他们对您站点的偏好是可以的。甚至可以允许用户选择使用不同的区域性设置查看不同的内容。一个很好的例子就是一个同时包含政治新闻和技术信息的网站。有人希望新闻用他们的“自然”语言,而技术信息用英语,这是很合理的。 最后,有一个回退模式是可以的。例如,如果您有一个根据用户所在地区为其提供服务的网站(例如,经销商),那么日本内容可能只存在于您的亚洲区域子网站上。一个说日语的用户访问您的EMEA网站可能只是停留在看英语内容,这很可能是他最后的选择。 |
4
3
在我创建的站点上,我通常遵循以下模式:
理想情况下,我只需要猜测一次,然后使用用户的cookie,或者用户直接访问所需的页面。 |
5
2
我同意,让用户有机会在你的应用程序中使用用户首选项覆盖它们。这对于诸如时区本地化问题等您无法从浏览器设置中获得的问题特别方便。 |
6
1
我冒着被认为不礼貌的风险,但我认为 post on this topic 将有更多的信息性的答案,主要是因为我的职位真的是一个问题。很抱歉,我以前没有找到那篇文章。 |
7
1
智能默认值和用户覆盖它们的能力之间存在差异。在我工作过的大型应用程序中,我从浏览器设置、地理位置等方面假设了用户的区域设置——但始终为用户提供了轻松切换的方法。 我不知道还有人会怎么做。不给用户纠正假设的机会是一个严重的问题,因为有时你会出错。 添加: 我认为您的问题在于,虽然您可以编辑您的区域设置,但如果它们看起来基本上与默认设置相同,那么应用程序开发人员就无法判断您是有意保留它,还是因为您不知道如何或为什么更改它。
我建议尊重用户的本地化设置,
除了
如果设置是压倒性的默认值,则用户可能不会更改。例如,我相信绝大多数(90+%)的用户
这会不会刺激越南的美国英语用户?当然。但它也对大多数人来说是最大的好处,有助于确保普通非技术用户获得最佳的真实体验。在我们能拿枪对着用户的头,强迫他们在打开电脑之前诚实地声明他们的语言/文化偏好之前,我们需要这样的启发式方法。 |
8
0
我从客户那里看到了足够有力的bug报告,当调查发现其中一个用户的浏览器文化设置错误时,我们现在让客户用配置设置覆盖浏览器。浏览器的文化设置经常出错,这对大多数最终用户来说不是很有用,也很难找到或更改它。 |
Neil Weicher · 环境变量和本地化 6 年前 |
QED · 带NSNumberFormatter的字符串乘法器 6 年前 |
Lee Wise · 翻译DNN 2sxc模块中的内容时出错 6 年前 |
TomBombadil · 查看本地化 6 年前 |
lorenzo · 本地化情节提要中未反映基本情节提要更改 6 年前 |