在android中使用URLConnection时,请求头中没有设置“Accept-language”?
问题描述:
我正在使用URLConnection从android应用程序下载html文件。但我想要基于设备区域设置的HTML内容。在android中使用URLConnection时,请求头中没有设置“Accept-language”?
假设用户从德语区域设置发送请求,则应该使用德语。我期待URLConnection应该根据设备区域设置发送接受语言,类似于ajax调用。但是,由URLConnection提出的请求中不存在accept-language头。
我是否需要明确设置请求头还是有其他选择吗?
在此先感谢。
答
您可以使用任何以下的得到您的格式的设备区域设置语言 -
Locale.getDefault().getLanguage() ---> en
Locale.getDefault().getISO3Language() ---> eng
Locale.getDefault().getCountry() ---> US
Locale.getDefault().getISO3Country() ---> USA
Locale.getDefault().getDisplayCountry() ---> United States
Locale.getDefault().getDisplayName() ---> English (United States)
Locale.getDefault().toString() ---> en_US
Locale.getDefault().getDisplayLanguage()---> English
来源 - Refer here
你可以给Accept-Language头在你的要求一样 -
URL url = new URL("website url");
URLConnection urlconnection = url.openConnection();
urlconnection.setRequestProperty("Accept-Language", "en-GB");