Эквивалентно вызову Javascript / JSON POST в синхронном DotNet C # - PullRequest
0 голосов
/ 21 сентября 2018

Мне нужен доступ к веб-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?

...