C # - PayPal Checkout JSON.Stringify "Не удалось загрузить ответ ... Ошибка 400: неверный запрос" - PullRequest
0 голосов
/ 11 марта 2019

Я вижу подробности об оплате на экране оповещения, и учетная запись PayPal Sandbox получает платеж в соответствии с этим, но я не могу зафиксировать эти данные в своем коде ASP.NET Core 2.1 для записи в базу данных.

                        <div id="paypal-button-container"></div>
                        <script>
                        paypal.Buttons({
                           createOrder: function (data, actions) {
                               return actions.order.create({
                                  purchase_units: [{
                                      amount: {
                                      value: '@planoPreco'
                                      }
                                  }]
                               });
                           },
                           onApprove: function (data, actions) {
                               return actions.order.capture().then(function (details) {
                                   alert('Transação completada por ' +
                                       details.payer.email_address + '\n' +
                                       details.id + '\n' +
                                       details.payer.name.given_name + '\n' + "R$ " +
                                       details.purchase_units[0].amount.value)
                                   return fetch('/Anunciantes/Contrato_Selecionado', {
                                       method: 'post',
                                       body: JSON.stringify({
                                           orderID: details.payer.email_address// '50007000'// data.orderID
                                       })
                                   })
                               });
                           }
                        }).render('#paypal-button-container');
                        </script>


    public async Task<IActionResult> OnPostAsync([FromBody] string orderID)
    {
        Console.Beep();

        TempData["Message"] = "Pagamento Salvo";

        var user = await UserManager.FindByIdAsync("10");

    }
...