Как расширить hosts.allowed в конфиге Play Framework Hocon
Я пытаюсь расширить фильтр разрешенных хостов Play Framework.
Как описано в документации Play, вы устанавливаете фильтр следующим образом:
.hosts {
allowed = ["localhost:8080"]
}
Hocon позволяет создавать массив путем установки переменных среды, поэтому я устанавливаю:
-Dallowed-hosts-addition.0=example.com
-Dallowed-hosts-addition.0=example.de
Но я не могу понять, как добавить allowed-hosts-addition
массив к hosts.allowed
в application.conf
имея значение по умолчанию. Как это сделать?
Два примера того, что я пробовал до сих пор:
Опция 1
.hosts {
allowed = ${?allowed-hosts-addition}["localhost:8080"]
}
Работает когда -Dallowed-hosts-addition.0
установлен, но не работает, если он не установлен. Ошибка: "Невозможно объединить объект или список с не объектами или списками, Quoted("") и SimpleConfigList(["localhost:8080"])) несовместимы". Хотя документация Hocon гласит, что ${?allowed-hosts-addition}
должен по умолчанию использовать массив, если он является частью объединения с массивом.
Вариант 2
.hosts {
allowed = ["localhost:8080"]
allowed += ${?allowed-hosts-addition}
}
Работает когда -Dallowed-hosts-addition.0
не установлен, но завершается неудачно, когда он установлен. Ошибка: "play.filters.hosts.allowed имеет список типов OBJECT, а не список STRING"