1

我正在尝试创建一个供 iPhone OS 设备查看的网页。当用户在 iPhone OS 设备上访问时,有没有办法检索当前语言或某些特定于区域设置的数据?我想根据设备的本地或语言设置网页语言。那么,如何获取访问我网页的 iPhone OS 设备的语言设置?

4

2 回答 2

2

尝试使用浏览器发送到服务器的“Accept-Language”标头。它应该类似于“en-us”或“fr-fr”等,具体取决于设备的语言设置。

于 2009-05-25T06:51:13.993 回答
0

Accept-Language这封电子邮件中可以看出, iPhone 确实发送了相当正确的信息。

(但是,它只发送对我来说很奇怪。发送似乎 fr-fr更合理,fr-fr, en-us;q=0.9将来可能会改变)

但对你来说更重要的信息是,你真的不需要在你的情况下做任何复杂的事情。这称为内容协商,是 Apache 和其他服务器的标准功能——它们会以用户喜欢的语言自动返回页面,并且配置最少。

您确实需要在不同的 URI 上为不同的语言创建不同的页面。如果你不这样做,你就打破了这样的想法,即任何内容都有一个可以轻松传递给另一个人的 URI,并且即使他/她的语言不同,第二个人也会看到完全相同的内容。

阿帕奇是如何做到的。你创造

example.fr.html
example.en.html
example.de.html

(并编辑.htaccess文件)。然后/example以用户的语言返回页面,同时/example.fr始终返回法语。作为额外的奖励,您不需要.html.

于 2009-06-02T00:28:42.740 回答