169 похожих чатов

Можно ли как-то в конфигурации установить функцию для параметра? config :ssl,

customize_hostname_check: [
match_fun: :public_key.pkix_verify_hostname_match_fun(:https)
]


Хочу модуль ssl настроить полностью из конфигурационного файла.

Заранее спасибо.

10 ответов

25 просмотров

Из "Эликсир в действии" Саша Юрич: Всегда помните о том, что скрипты с общими настройками (config.exs) и скрипты с настройками определенного окружения (dev.exs) выполняются перед компиляцией и запуском проекта. Это означает, что количество действий с этими скриптами сильно ограничено. Даже несмотря на то, что эти скрипты представляют собой обычный код на Elixir, в нем можно вызывать только функции стандартной библиотеки Elixir и вспомогательные функции инструмента mix (например, Mix. env/0). Нельзя использовать функции ваших модулей или код зависимостей, потому что эти модули не доступны во время выполнения скриптов.

Maxim- Автор вопроса
Игорь Агапов
Из "Эликсир в действии" Саша Юрич: Всегда помните...

Спасибо. Вроде :ssl не ставится как зависимость, но модуль :public_key не доступен. Или речь именно только об elixir модулях?

Игорь Агапов
Из "Эликсир в действии" Саша Юрич: Всегда помните...

можно попробовать это сделать в runtime.exs, он при запуске приложения выполняется @prtngn

Maxim- Автор вопроса
Maxim
Такая же ситуация, не работает.

А почему не работает? Как ты это понимаешь?

Maxim- Автор вопроса
Lama Lover
А почему не работает? Как ты это понимаешь?

Ругается на то, что нельзя ставить функцию в конфиг. Сейчас не готов показать пример (

Maxim
Ругается на то, что нельзя ставить функцию в конфи...

$ iex -S mix Erlang/OTP 24 [erts-12.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit] Compiling 1 file (.ex) Generated anime app Interactive Elixir (1.13.3) - press Ctrl+C to exit (type h() ENTER for help) iex(1)> Application.get_env :anime, :func #Function<44.65746770/1 in :erl_eval.expr/5> iex(2)> f = Application.get_env :anime, :func #Function<44.65746770/1 in :erl_eval.expr/5> iex(3)> f.(5) 6 iex(4)> BREAK: (a)bort (A)bort with dump (c)ontinue (p)roc info (i)nfo (l)oaded (v)ersion (k)ill (D)b-tables (d)istribution a $ cat config/dev.exs import Config config :anime, :x, :y config :anime, :func, fn x -> x + 1 end

Maxim- Автор вопроса
Lama Lover
У меня всё работает

А такая функция: :public_key.pkix_verify_hostname_match_fun(:https)

Maxim
А такая функция: :public_key.pkix_verify_hostname_...

Такая тоже работает. Ты скинь ошибку, мы посмотрим в чём конкретно дело

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта