Эквивалентно вызову 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?