问题标签 [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.
php - CURLOPT_HTTPHEADER 的接受语言不起作用
我试图通过cURL获取Facebook主页的源代码,但是由于我的服务器主机的位置,它都是中文的。出于这个原因,我添加Accept-Language
了CURLOPT_HTTPHEADER
将语言更改为英语,但失败了。根据我上面引用的答案,下面是我尝试的 cURL 的 PHP 代码:
但它仍然显示中文:
我怎么解决这个问题?
http - 如何解释多个 Accept-* 标头
我对RFC 2616的阅读没有回答我的问题:
服务器应该如何解释多个Accept、Accept-Encoding、Accept-Language等标头?
当然,这通常应该是一种罕见的情况,但我认为每个 HTTP 客户端实际上都在做它应该做的事情。
想象一个 HTTP 请求包括以下内容:
服务器应该:
- 结合结果,得出有效的
Accept-Language: en, pt
? - 只尊重第一个(
en
)? - 只尊重最后一个(
pt
)? - 抛出一个嘶嘶声(返回 400 状态,也许?)
选项#1 对我来说似乎是最自然的,最有可能是客户的意思,即使不是客户的意思,也最不可能完全打破期望。
但是对于如何处理这些情况,是否有任何实际规则(最好由 RFC 指定)?
regex - 合并与正则表达式不匹配的行
我有一个文件,其中包含来自网络的日志;它的简化版本如下:
我已经尝试了几个正则表达式组合来识别 Accept-Language,它是使用以下 awk/sed 的每一行的开头:
到目前为止,我还没有设法让 awk/sed 给我以下结果:
任何帮助表示赞赏。该文件包含大约 100 万条以上的记录,因此我很高兴采用不使用 sed/awk 并提高性能的路线。
java - JAX-RS 接受标头参数兼容性
如果Accept
标头参数字符串具有多种可接受的媒体类型,例如:
如何查找媒体类型是否与单个 MediaType 对象兼容?
如果Accept
标头包含单个媒体类型,则它可以工作。
有没有什么方法比如MediaType.isCompatible(String)
?
注意: @Consumes
无法使用 header,因为支持自定义媒体类型,并且无法在编译时确定所有媒体类型。
async-await - 如何在与 async/await 兼容的 Web API 2 中设置文化?
我有一个 REST 服务,可以生成带有货币和日期的字符串消息,因此我需要设置正确的文化。消息是在异步操作之间运行的不同步骤中生成的。
Accept-Language
如果在 Web.config 中配置了此类功能,Web API 将在标头中设置文化:
经过一些测试,Web API 以这种方式获得的文化似乎在 async/await 操作中是一致的。我想知道它在自我托管时是否会表现得一样......
但是,我想知道如何以SynchronizationContext
在主机使用中正确流动的方式任意更改请求的文化。我认为这应该是可能的,因为正如我所说,从Accept-Language
使用的标题中获得的那个enableClientBasedCulture="true"
似乎流动正确。
例如,AspNetSynchronizationContext
流经HttpContext.Current
,因此如果Thread.CurrentThread.CurrentCulture
和/或被Thread.CurrentThread.CurrentUICulture
操纵,他们的文化可能会在await
. 所以这种方式对于 async/await 是不安全的。
我正在寻找的不是来自 Stephen Toub 的文化等待者,而是强制 Web API 将请求的文化更改为其他内容的方式。
我尝试使用委托处理程序,更改Accept-Language
请求消息中的 ,但似乎为时已晚,并且对Thread.CurrentThread.CurrentCulture
和/或没有影响Thread.CurrentThread.CurrentUICulture
。
有没有办法以安全的异步/等待方式做到这一点?
python-3.x - 使用 Selenium (Python) 为 Chrome Headless 设置 Accepted-Lang
通过 ChromeOptions 设置 Accepted-Lang 标头适用于常规 Chrome
options.add_experimental_option('prefs', {'intl.accept_languages': 'en,en_US'})
我正在尝试切换到新的无头 Chrome,但显然在检查 validator.w3.org 上的标头时此选项无效。我可以用另一种方式改变它们吗?有人知道是否会支持此功能吗?
在 MacOS 上使用 Chrome 60、Chromedriver 2.30、Selenium 3.4.3、Python 3.6.1
使用此代码:
谢谢!
python - django 语言环境无法翻译取决于接受语言
这是我的设置
这是一些印刷品
我的 Django 版本是1.5.4
如果我设置
下次我会翻译。怎么了 ?
here-api - Here API:Canaccept-language header 可用于获取过滤器地址(法语与英语)
我们正在使用地点/搜索端点来查找地址。
由于位于安大略省,许多地址都有法语和英语版本。
例如,查找 360 Lisgar Ottawa,on 将返回 2 个法语地址和 2 个英语地址 ( https://places.demo.api.here.com/places/v1/discover/search?at=45%2C-75&q =360+Lisgar%2C+Ottawa%2C+on&addressFilter=countryCode%3DCAN&Accept-Language=en%3Bq%3D1%2Cfr%3Bq%3D0.1&app_id=DemoAppId01082013GAL&app_code=AJKnXv84fjrb0KIHawS0Tg )。
我们一直在尝试各种“Accept-Language”头参数的组合,不同的值和权重,总是返回4个值。有没有其他方法只能获取法语或英语地址?
如果返回的地址上有任何语言字段,我们可以过滤我们的代码,但我们在文档中找不到任何关于它的参考。有什么办法吗?
谢谢,雷内
http-headers - Headless chrome 不发送 Accept-Language 标头
在测试无头镀铬时,我注意到它不会传输Accept-Language
标题条目。我已经确认当有一个可见的浏览器窗口时它会被发送。
这是否有原因,chrome是否可以选择要求/强制它发送这些正常值?
要看到这一点,您可以启动 Fiddler 并在命令行中输入:
在 Fiddler 检查器(原始视图)中,您会看到:
而运行相同的命令没有--headless
给你这个:
java - 带有语言和地区的 REST API 请求
我正在开发一个 REST API,我需要实现一个需要语言和国家/地区以正确格式生成结果的方法,因为结果包含数字和日期。
我正在使用 HTTPAccept-Language
标头来获取语言。规范将标头定义为语言说明符,但现在我不确定使用此标头获取国家/地区是否正确。例如,我想允许结果为西班牙语,但数字为英文格式(用逗号而不是点)。
标头是es-US
可接受的值吗?Accept-Language
我在想我可以X-Country
为我的 REST API 开发一个新的自定义标头。
有什么想法吗?谢谢。