Я работаю над https://github.com/NorseGaud/go-daemon и не могу запускать http-вызовы GET внутри дочерних процессов. Я недостаточно знаю о golang и os.Process.
Я использую macOS.
Когда я запускаю «go run example/cmd/gd-signal-handling/signal-handling.go», который просто выполняет простой httpClient.Do
в дочернем элементе, я вижу:
2024/04/05 17:45:33 - - - - - - - - - - - - - - -
2024/04/05 17:45:33 daemon started
1
2024/04/05 17:45:34 error making GET request to google.com err Get "https://google.com": tls: failed to verify certificate: SecPolicyCreateSSL error: 0
Тем не менее, это работает, если я запускаю то же самое httpClient.Do
в основной функции.
Затем я завершаю процесс с помощью команды «go run example/cmd/gd-signal-handling/signal-handling.go -s quit».
Сможет ли кто-нибудь, знакомый как с Голангом, так и с процессами, объяснить мне, почему это невозможно?
У меня была версия 1.21.7, сейчас обновился до 1.22.2, и это все еще происходит. Спасибо за ссылку! Я взгляну.
Спасибо за подтверждение, @NorseGuard.
Я нашел проблему, похожую на вашу здесь. https://github.com/golang/go/issues/61000
Кажется, эта проблема воспроизводится при использовании относительного пути только в MacOS и не решена Apple полностью.
Я надеялся, что вы опубликуете ответ, чтобы я мог проголосовать за него :)
@NorseGuard Это мотивирует меня работать лучше! Спасибо👍
Использование абсолютного пути перестало работать в macOS 14.5. Я вообще не могу использовать go run
для тестирования приложения.
Какую версию go вы используете? Кажется, это ошибка Go в MacOS. Я рекомендовал эту страницу github.com/golang/go/issues/61000