gpt4 book ai didi

java - Http头请求中应该使用 "en_US"和 "en-US"哪种格式作为Accept-Language?

转载 作者:太空狗 更新时间:2023-10-29 13:22:01 27 4
gpt4 key购买 nike

我实际测试了这两种格式,我的服务器对这两种格式都没有问题。自 Http header fields说“en-US”是格式,而我的本地 java 类返回“en_US”,我有点困惑要使用它们中的哪一个!

我的部分代码是这样的:

// set accepted language
List<String> acceptedLanguages = null;
final Locale defaultLocale = Locale.getDefault(); // en
if (defaultLocale != null)
{
final String defaultLang = defaultLocale.toString(); // en_US
if (!TextUtils.isEmpty(defaultLang))
{
acceptedLanguages = new ArrayList<String>();
acceptedLanguages.add(defaultLang);

// Always add en as fallback if applicable
if (!HttpClient.DEFAULT_ACCEPTED_LANGUAGE_COUNTRY.equals(defaultLang))
{
acceptedLanguages.add(HttpClient.DEFAULT_ACCEPTED_LANGUAGE_COUNTRY);
}
}
}

String header = HttpClient.getAcceptLanguageHeader(acceptedLanguages); // like: cz_CH;q=1.0, en_US;q=0.9
this.mHttpGetRequest.addHeader(HttpHeaders.ACCEPT_LANGUAGE, header);
如果用户的设备语言不是 en_US

getAcceptLanguageHeader() 方法会将 en_US;q=0.9 添加到字符串中。

任何想法将不胜感激。谢谢。

最佳答案

我相信连字符“-”被接受为 HTTP 标准的一部分,而下划线“_”将被拒绝。参见 W3C HTTP v1.1 Standard, Header Field Definitions, Section 14.4 Accept-Language了解更多信息。

注意:W3C 代表万维网联盟

关于java - Http头请求中应该使用 "en_US"和 "en-US"哪种格式作为Accept-Language?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27499655/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com