В вашем сообщении об ошибке cors четко сказано, что вам нужно использовать http при выполнении запроса
$.ajax({
type: "GET",
url: "http://localhost:3000/send",
beforeSend:function(){
$(".loading_msg").hide();
},
complete:function(){
$(".loading_msg").show();
}
});
Я не знаю, существует ли простой способ преобразовать с 3 буквами в версии с 2 буквами, но в худшем варианте развития событий, Вы могли создать Карту их, как так:
String[] languages = Locale.getISOLanguages();
Map<String, Locale> localeMap = new HashMap<String, Locale>(languages.length);
for (String language : languages) {
Locale locale = new Locale(language);
localeMap.put(locale.getISO3Language(), locale);
}
Теперь можно искать локали с помощью вещей как localeMap.get("eng")
;
Править: Измененный путь карта создается. Теперь должен быть один объект на язык.
Редактирование 2: это было некоторое время, но изменило код для использования фактической длины массива языков при инициализации Карты.
Можно использовать конструктора Locale(String language)
, где язык является 2 кодами буквы ISO-639-1. Я думаю, что самый легкий способ преобразовать ISO-639-2 в ISO-639-1 состоял бы в том, чтобы создать HashMap<String,String>
постоянный.
Некоторый измененный код из моего проекта, который имеет подобное требование. У нас есть наш собственный исторический формат часового пояса, таким образом, мы не можем пользоваться стандартными библиотеками.
public class MyProjectTimeZoneFactory {
private static Map timeZoneDb;
/**
* Set up our timezone id mappings; call this from any constructor
* or static method that needs it.
*/
private static void init() {
if(null == TimeZoneDb) {
timeZoneDb = new HashMap(); // Maybe a TreeMap would be more appropriate
timeZoneDb.put(" ","GMT+00");
timeZoneDb.put("EAD ","GMT+10");
timeZoneDb.put("JST ","GMT+9");
// etc.
}
}
public static TimeZone getTimeZone(String id)
throws CommandFormatException {
init();
TimeZone tz;
if(timeZoneDb.containsKey(id)) {
tz = TimeZone.getTimeZone((String)timeZoneDb.get(id));
} else {
throw new CommandFormatException("Invalid Timezone value");
}
return tz;
}
}
Вы могли утверждать, что будет лучше иметь карту в конфигурации, а не коде - возможно, в файле свойств. Это может быть верно - но действительно помнит правило Прагматически настроенных Программистов 'Ваш не испытание необходимость в нем'.