Я думал, что ответ будет лежать в средстве обратной передачи. Это дает идентификатор пользователя Google и номер заказа. Однако я не видел, как преобразовать любой из них в адрес электронной почты для отправки только что купленного цифрового товара.
КСТАТИ. Я отказался выполнять клиентскую часть выполнения, поскольку это казалось небезопасным. Если я ошибаюсь, то почему они предлагают возможность обратной передачи?
... затем я понял, что мы могли бы сделать часть этого на стороне клиента и часть на стороне сервера.
Я догадался, что что-то возвращается из обратного вызова успеха на стороне клиента.
success: function(result) {
console.log('success',result.response.orderId);
complete(result.response.orderId);
},
Итак, теперь у меня есть google orderId на стороне клиента, и я знаю идентификатор пользователя. Таким образом, моя функция complete() может отправить orderId и наш userId на сервер, который затем может сопоставить это с успешным платежным orderId из обратной передачи (что происходит первым) и выполнить заказ.
Да, это неэлегантно, но я считаю, что это безопасное решение.
Может быть, более элегантно использовать свойство [sellerData] в полезной нагрузке отправки, чтобы содержать наш идентификатор пользователя и номер заказа. Затем у нас есть больше элементов для сопоставления после успешного обратного вызова. Думаю, я воздержусь от доставки цифрового товара, пока все эти проверки не будут завершены.
Чего я не понимаю, так это почему такого предложения (или лучшего) нельзя найти в руководстве по кошельку?
Павел
person
user1712240
schedule
31.08.2013