Генерация клиентского токена с помощью braintree в iOS + переполнение стека

Я работаю над Brain tree впервые и получаю проблемы на первом этапе. Я не могу получить доступ к функциональности с помощью iOS + php

Мне нужно создать маркер клиента, который не работает с этим кодом, и я действительно не понимаю, в чем проблема. Пожалуйста, скажите мне, как генерировать клиентский токен.

$clientToken = Braintree_ClientToken::generate(array(
"customerId" => $aCustomerId
));

1

Решение

Я только что столкнулся с этой же ошибкой в ​​iOS — xCode говорил мне, что client_token был в неправильном формате, он ожидал ассоциативный массив, но код выше просто возвращает один объект. Попробуйте это вместо этого — работал для меня:

$aCustomerId = '';

$clientToken["client_token"] = Braintree_ClientToken::generate(array("customerId" => $aCustomerId));
return ($clientToken);

Обратите внимание, что я не устанавливаю здесь customerId — вы можете вставить его или полностью удалить из кода, то есть полностью удалить ‘array («customerId» => $ aCustomerId). это должно работать в любом случае.

NB: Это в PHP-скрипте на стороне сервера, а не в XCode

Редактировать:
Когда вы создаете клиента с помощью функции braintree (либо: create, либо :: sale), вы можете назначить «id» по вашему выбору в массиве «customer», например:

$result = Braintree_Transaction::sale(array(
'amount' => $value,
'customer' => array(
'id' => $anIdOfYourChoosing,
)
));

Затем в следующий раз, когда вы создадите :: sale, вы можете вызвать ‘customerId’ в массиве sale, и он будет использовать ранее установленные реквизиты этого клиента, например,

$result = Braintree_Transaction::sale(array(
'amount' => $value,
'customerId' => $anIdOfYourChoosing,
)
));

Таким образом, в случае clientToken, если вы передадите значение в $ aCustomerId, он выполнит поиск хранилища Braintree для этого customerId и выдаст вам токен для этого клиента (при условии, что клиент был ранее создан). Это не очень хорошо объяснено в руководствах Брэйнтри в настоящее время. надеюсь, это поможет

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]