Alexa.NET.Request.RequestVerification не возвращается обратно из выполнения - PullRequest
0 голосов
/ 04 октября 2019

Я выполняю проверку запроса, которая требуется для функционального теста навыка alexa перед тем, как запустить его в действие. Я реализовал код в C #, чтобы обеспечить проверку с использованием библиотеки Alexa.NET. Все работает нормально, кроме последней проверки, которая требует от пользователя проверки всего необработанного тела в соответствии с подписью из запроса. Хотя уже есть реализация для проверки данных в классе Alexa.NET.Request.RequestVerification, когда мое выполнение входит в эту часть, оно не выходит из него.

Если я не использую await и async, Alexa. NET.Request.RequestVerification.Verify возвращает Status = WaitingForActivation и Result как всегда FALSE.

Я искал вокруг и нашел только решения, чтобы сделать мой метод асинхронным и использовать await. Но ни один из них не выдвигает на первый план проблему, с которой я сталкиваюсь. После того, как мой метод был асинхронным, курсор отладки просто не вернется назад из выполнения.

private static async System.Threading.Tasks.Task<bool> IsRequestValidAsync(string signature, Uri signatureCertChainUrl, string body)
        {
            bool resultSet = await Alexa.NET.Request.RequestVerification.Verify(signature, signatureCertChainUrl, body);
            return resultSet;
        }

Alexa.NET.Request.RequestVerification.Verify должен вернуться обратно с некоторым значением.

1 Ответ

0 голосов
/ 04 октября 2019

Вы можете попробовать это: -

Task.FromResult(Alexa.NET.Request.RequestVerification.Verify(signature, 
signatureCertChainUrl, body));

Я не могу оставить комментарий из-за ограничений на сайте, поэтому опубликовал ответ. Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...