Полное раскрытие, я работаю в Braintree. Если у вас есть дополнительные вопросы, я рекомендую обратиться в службу поддержки .
Во-первых, если вы не используете Vault , вам не нужно передавать параметр customerId
в запросе на генерацию токена клиента. Вместо этого ваш запрос может выглядеть примерно так:
gateway.clientToken.generate({}, function (err, response) {
var clientToken = response.clientToken
});
Это предоставит вам клиентский токен, который вы можете передать своему клиенту, чтобы авторизовать iOS SDK для взаимодействия с Braintree. Вы можете найти пример этого в контексте веб-приложения Node.js в этом примере Node в нашем репозитории Github .
Если вы используете Хранилище, вам нужно будет передать идентификатор клиента в качестве значения параметра customerId
. Идентификатор клиента можно получить из объекта ответа клиента в атрибуте id
. Объект ответа предоставляется для каждого успешного запроса API клиента. Например, если вы создаете клиента, создание и поиск идентификатора клиента будет выглядеть примерно так:
gateway.customer.create({
firstName: "Jen",
lastName: "Smith",
company: "Braintree",
email: "jen@example.com",
phone: "312.555.1234",
fax: "614.555.5678",
website: "www.example.com"
}, function (err, result) {
result.success;
// true
result.customer.id;
// e.g. 494019
});
В этом примере вы можете установить значение параметра customerId
равным "494019"
. Это будет означать, что ваш исходный код может быть изменен так:
var aCustomerId = "494019";
gateway.clientToken.generate({
customerId: aCustomerId
}, function (err, response) {
var clientToken = response.clientToken
});