Эквивалентно вызову Javascript/JSON POST в синхронном DotNet C#

Мне нужно получить доступ к веб-API с веб-сайта DotNet MVC. В настоящее время я настроил тестирование на стороне клиента в Javascript, но по соображениям безопасности его необходимо перенести на сторону сервера. Я изо всех сил пытаюсь найти простой способ сделать это.

Мое самое большое препятствие - то, что весь мой код сайта в настоящее время является синхронным, и все же (кажется) мне потребуется доступ к асинхронному коду, и эти два, кажется, не работают хорошо вместе.

Все примеры, которые я видел для синхронного доступа к API, просто передают простой параметр и выполняют вызов GET.

Вот текущий тестовый код Javascript:

var API_CALL =
{
    apiOperation :"CREATE_CHECKOUT_SESSION",
    apiUsername : "[the user name]",
    apiPassword : "[the password]",
    order:
    {
        currency:"AUD",
        id:"@Model.Payment.UniqueID"
    },
    interaction:
    {
        returnURL: "[the 'thankyou' URL]"
    }
};
$.ajax({
    type: "POST",
    data :JSON.stringify(API_CALL),
    url: "[the_URL_of_the_API]",
    contentType: "application/json",
    success: function (result) { if (result.result=="SUCCESS") {sessionID = result.session.id; }},
    error: function (result) {alert(JSON.stringify(result)); }
});

Который возвращает JSON так:

{
    lineOfBusiness [string]
    merchant [string]
    result [string]
    session {
        id [string]
        updateStatus [string]
        version [string]
    }
    successIndicator [string]
}

Есть ли способ сделать это синхронно в C# на DotNet?

0 ответов

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