我注册了braintreepayment,并添加了商家ID,publickey和私钥,但根本无法得到clientToken,反而给我一个错误,当我搜索这个错误时,我发现这是braintree文档中的未知错误,而且没有人有同样的问题被修复。
这是我第一次使用Braintree。
这是代码。
require('dotenv').config();
const User = require('../models/user');
const braintree = require('braintree');
const gateway = braintree.connect({
environment: braintree.Environment.Sandbox,
merchantId: process.env.BRAINTREE_MERCHANT_ID,
publicKey: process.env.BRAINTREE_PUBLIC_KEY,
privateKey: process.env.BRAINTREE_PRIVATE_KEY
});
module.exports = {
generateToken(req, res){
gateway.clientToken.generate({}, function(err, response){
if(err){
console.log(err);
res.status(500).send(err);
} else {
return res.send(response.clientToken);
}
})
}
}
这是路由文件
const express = require('express');
const router = express.Router();
const {requireSignin, isAuth} = require('../controllers/auth');
const {userById} = require('../controllers/user');
const {generateToken} = require('../controllers/braintree');
router.get('/braintree/getToken/:userId', requireSignin, isAuth, generateToken);
router.param('userId', userById);
module.exports = router;
它给我的错误是这样的
{ "name": "unexpectedError", "type": "unexpectedError"}