Я вызываю API и выполнил вызов crate_order. Когда пользователь завершает платеж, API отправляет данные обратного вызова платежа в POST и использует Content-Type application/x-www-form-urlencoded.
Я не уверен, как перехватить эти данные POST на C# и сохранить их в объекте, чтобы я мог вернуться.
URL-адрес call_back - это мой метод CgCallback: example.com/CgCallback.
Этот метод выглядит так:
public CgCallback incomingData()
{
CgCallback resultCgOrder = new CgCallback();
resultCgOrder.Id = Request.Form["id"];
resultCgOrder.OrderId = Request.Form["order_id"];
return resultCgOrder;
}
К сожалению, эта ошибка:
The name 'Request' does not exist in the current context
Возможный дубликат Почему имя «Запрос» не существует при записи в файл class.cs?





Я думаю, вам нужно настроить страницу с URL-адресом обратного вызова, чтобы coingate запускал вашу страницу.
public partial class Test_CallBack_Page : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string tempID = GetFormVariableOrNull(Request.Form["id"]);
string tempOrder_ID = GetFormVariableOrNull(Request.Form["order_id"]);
string tempStatus = GetFormVariableOrNull(Request.Form["status"]);
//pending, confirming, paid, invalid, expired, canceled, refunded
if (tempStatus.Equals("paid"))
{
//update your Purchase Order
}
}
protected string GetFormVariableOrNull(object formvariable)
{
if (formvariable != null)
{
try
{
return formvariable.ToString();
}
catch (Exception ex)
{
/// log the exception in file or DB
Console.WriteLine(ex.Message);/// just for an example
return null;
}
}
else return null;
}
}
не могли бы вы поделиться своим кодом? Я путаю создание порядка с помощью coingate api с использованием C#.
Привет, Yth, спасибо за ответ. не волнуйтесь, скоро поделюсь с вами своим кодом. я не смог завершить создание порядка и стек в этой области callback_URL. после сортировки выбьет вас.
этот вопрос задавался несколько раз: вот ссылка stackoverflow.com/questions/6159103/…