如何解决Braintree GraphQL - 结合查询与 chargePaymentMethod 和 updateCustomer 突变
我正在从 Braintree 的 Node.js API 迁移到 GraphQL。旧 API 的 braintree.gateway.transaction.sale(options) 方法采用带有 customer 对象的参数,该对象具有以下属性:firstName、lastName、email ,和电话。
在 Braintree 的 GraphQL API 中,这种变异会向一种支付方式收费...
mutation chargePaymentMethod($input: ChargePaymentMethodInput!) {
chargePaymentMethod(input: $input) {
transaction {
id
status
}
}
}
{
"input": {
"paymentMethodId": "fake-valid-nonce","transaction": {
"amount": "1.00"
}
}
}
ChargePaymentMethodInput.TransactionInput 支持 customerId 但不支持具有 firstName、lastName 等的 CustomerInput 类型,如旧的 Braintree.gateway。 transaction.sale() 方法。
我猜我需要查询以查看客户是否存在。如果没有,请使用 createCustomer 突变。如果有,请使用 updateCustomer。然后获取 customerId 并将其传递给 chargePaymentMethod 突变。
有没有办法混合查询以查看客户是否存在一个请求中的多个突变(嵌套突变)?在这一点上,示例非常薄。
如果我必须做单独的请求,我可能会坚持使用旧的 API,因为它会更有效率。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。