问题标签 [http-accept-language]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 有任何 Python 模块可以对 HTTP_ACCEPT_LANGAUGE 做任何事情吗?
我已经读过,解码可以从网站返回的 HTTP_ACCEPT_LANGUAGE 可能很长的字符串并不一定简单。Python中是否有任何包试图对此做任何事情。我特别感兴趣的是至少获得可接受的语言列表,如果没有让它们按正确的请求顺序排列的话。理想情况下,如果实现了完整的定义(可以在http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.4看到),那将是最好的情况,以防我的要求发生变化。
java - 在 Java 中解析 Accept-Language 标头
请求中的接受语言标头通常是一个很长的复杂字符串 -
例如。
有没有一种简单的方法可以在java中解析它?或者一个 API 来帮助我做到这一点?
php - PHP 或 htaccess 通过 Accept-Language 重写 URL?
我已经建立了我的网站,所以我只需要添加“?lang=en”或“?lang=es”来更改语言英语/西班牙语。
当我使用例如“http://domain.com/something/something_else?lang=es”进入该站点时,会设置一个 cookie,因此我会继续以该语言浏览该站点。
我想首先通过他们浏览器的“Accept-Language”值重定向我的用户,但如果他们愿意,然后允许他们继续以其他语言浏览网站。
最好的方法是什么?.htaccess 会与选择语言时设置的 cookie 一起使用吗?
编辑:这是我用保罗回答更新的代码:
EDIT2:哦,我只有“en”和“es”语言。我不确定此代码如何仅在这两者之间进行选择或设置默认值...:/
google-chrome - 如何将自定义接受语言添加到 Chrome 以进行伪本地化测试?
我正在测试网站的伪本地化。
我可以将 Internet Explorer 配置为具有自定义接受语言:
- 单击工具,Internet 选项
- 在常规选项卡上单击语言
- 在语言首选项对话框中单击添加。
- 输入用户定义的语言
qps-ploc
(即伪(基本)语言环境) - 点击确定
现在,当 Internet Explorer 发出 http 请求时,接受语言将以qpc-ploc
:
如何对 Chrome 执行相同的更改?火狐?
更新
还应该注意的是,Internet Explorer尊重我的 Windows 偏好。我的 Windows 配置为使用伪(基本) qps-ploc
语言环境。默认情况下,Internet Explorer 使用它。
谷歌浏览器忽略了我的 Windows 偏好,而是决定请求en-US
和en
语言:
php - 这是检测浏览器语言并将 301 重定向到主页的最友好的方式
我有一个multi-language
页面,我想检测客户端浏览器的语言,然后制作一个 301 主页或其他东西。但我不确定哪种方式更适合 seo。不知道web spider
喜欢哪一个?还是其他方式?
或者
或者其他方式?谢谢。
ios - xcode - 我想接收设备语言
如何通过以下方法获取 iPhone 设备语言到服务器?
http - accept_language 检测国家/地区的准确性
我需要检测用户所在的国家/地区,但我试图避免整个调用外部服务来获取基于 IP 或内部数据库的位置。我需要让这项服务真正响应,并且查询任何外部服务需要将近半秒钟,所以我试图避免这种情况。此外,这种方法对数据库的任何调用都是昂贵的。我需要页面在 20 毫秒内做出响应。
我正在考虑根据Accept_language
标题获取国家/地区语言环境。
我的问题是。有谁知道这可能有多准确?我知道国家并不总是存在,或者用户可能会更改默认语言或使用他们的计算机出现在不同的国家。
有没有人有以前的经验,或者是否有任何文档(我在谷歌搜索或 w3 页面中找不到)指定使用这种方法的准确度或错误百分比?
url-rewriting - IIS 7.5 Wcf 路由服务。http标头消失
我已经设置了一个 wcf 路由服务 (IIS 7.5) 位于我的 winforms 客户端和后端服务器之间。
我正在尝试解决一个错误,该错误显然是由 http 标头“Accept-Language”的消失引起的。客户端在请求中发送此标头,但根据提琴手(以及我正在观察的行为),从 iis 发出的请求没有“Accept-Language”标头。这会导致服务器发回以 en-US 区域设置而不是客户端指定的区域设置格式的数据。
在这个 url上,他们举例说明了如何做我想做的事。这是我基于此所做的配置(我已经在进行 url 重写)。serverVariables 部分应该解决我的问题:
url重写工作正常。我唯一剩下的问题是 http 标头修改。在 IIS 管理器中,我已将 HTTP_ACCEPT_LANGUAGE 设置为 url 重写模块中允许的服务器变量。我错过了什么?
symfony - 为什么 Symfony 会忽略浏览器的区域设置(HTTP-Request Accept-Language Header)?
我目前正在尝试在 Symfony 2.0 中启用翻译器。Symfony 忽略 Accept-Language Header 变量并使用 default_locale(当未定义回退时)。
我的请求如下所示:
但$this->getRequest()->getLocale();
让我en
提出同样的要求。
有人可以告诉我可能出了什么问题吗?
是的,我已尝试清除缓存并删除我的 cookie (omnomnom) :)
.htaccess - 仅当 HTTP 引荐来源不等于某些东西时,htaccess 才重定向
我有以下规则可以将中国用户重定向到网站的中文版本:
这很好用。
但是,应该有一个链接可以将他们带回到网站的英文版本,这只是普通域(www.example.com)。
但这只是将他们直接重定向回中文网站,因为它符合规则。所以我需要这样做,所以只有当引用者不是 ch.example.com 时才会触发上述规则。
我试过这样的事情:
但它不起作用。