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

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

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


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

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

10 ответов

21 просмотр

Из "Эликсир в действии" Саша Юрич: Всегда помните о том, что скрипты с общими настройками (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_...

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

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

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

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Ребят в СИ можно реализовать ООП?
Николай
33
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Карта сайта