我正在将Braintree付款集成到我的iOS应用中,但仍处于Sandbox阶段。我已使用api键将Braintree的代码粘贴到服务器上的node.js文件中,但是在以下摘录中,来自https://developers.braintreepayments.com/start/hello-server/node的代码片段中,我不知道从何处获取“ aCustomerId”,或者可能要替换的内容
gateway.clientToken.generate({
customerId: aCustomerId
}, function (err, response) {
var clientToken = response.clientToken
});
答案 0 :(得分:0)
完全公开,我在Braintree工作。如果您还有其他疑问,建议您与support联系。
首先,如果您不使用Vault,则无需在客户端令牌生成请求中传递customerId
参数。相反,您的请求可能如下所示:
gateway.clientToken.generate({}, function (err, response) {
var clientToken = response.clientToken
});
这将为您提供一个客户端令牌,您可以将其传递给客户端以授权iOS SDK与Braintree进行交互。您可以在this Node example in our Github repo的Node.js Web应用程序上下文中找到一个示例。
如果您使用保险柜,则需要传递客户ID作为customerId
参数的值。您可以从customer response object属性中的id
获取客户ID。为每个成功的客户API请求提供响应对象。例如,如果您正在创建客户,则创建和检索客户ID的过程将类似于以下内容:
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
});