Kestrel Как передать данные обратно в консольное приложение

Я создал консольное приложение в Net Core. Я запустил веб-сервер Kestrel, используя

WebHost.CreateDefaultBuilder(args).UseStartup<Startup>().Build().Run();

Я хочу, чтобы веб-сервер получил веб-запрос (с некоторыми данными), а затем отключился с помощью

applicationLifetime.stopApplication();

Теперь я хочу передать эти данные обратно в консольное приложение. Является ли это возможным? Если да, то как мне это сделать.

Что вы имеете в виду, говоря «передать данные обратно в консольное приложение»? Что именно вы хотите делать с данными? Хотите вернуть как результат Main?

Mohammad Dehghan 27.10.2018 14:11

Все это очень странно. Веб-приложение, которое закрывается ?! Что ты пытаешься сделать?

Mohammad Dehghan 27.10.2018 14:12

Консольное приложение на самом деле будет библиотекой, которая выполняет все виды операций, связанных с oauth.

Dannyboyng 27.10.2018 14:15

Таким образом, он не должен запускать веб-сервер. Вам нужно либо реализовать отдельную службу oauth (которая запускает веб-сервер, и все его взаимодействия осуществляются через HTTP-запрос / ответ), либо библиотеку, которая загружается внутри другого приложения и инкапсулирует желаемую логику (которая не запускает отдельную сервер).

Mohammad Dehghan 27.10.2018 14:19

@MohammadDehghan Спасибо за ваше понимание. Речь идет о материалах, связанных с сервером Oauth. Я делаю библиотеку для настольных компьютеров, связанных с клиентом Oauth. Вы знаете, возможно ли то, о чем я прошу? Если да, ответьте на вопрос

Dannyboyng 27.10.2018 14:22

Хотя я уверен, что вы делаете что-то не так, но есть один способ сделать это: создать статическое свойство в своем классе Program. Задайте это свойство в своем конкретном запросе и прочтите его в своем Main после вызова метода Run.

Mohammad Dehghan 27.10.2018 14:44

Что ж, ваше решение работает. Кто бы мог подумать, решение будет таким простым. Если вы прочитали спецификацию / поток Oauth для настольных приложений, вы увидите, что вам нужно временно развернуть веб-сервер, чтобы получить код авторизации. Еще раз огромное вам спасибо, вы джентльмен и ученый.

Dannyboyng 27.10.2018 15:44

Пожалуйста! Спасибо за информацию о Oauth. Вроде логично! Я этого не знал!

Mohammad Dehghan 28.10.2018 07:44
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
8
42
0

Другие вопросы по теме