2016-04-21 8 views
0

ich Problem mit Streifen haben erstellen ich etwas innerhalb Rückruf nicht bekommen ...Wie Ladungen mit Streifen und Node.js

Hier ist meine Server-Seite:

Stripe.charges.create(
         { 
          amount: totalCostUSD, 
          currency: 'usd', 
          source: req.body.stripeToken, 
          description: 'Example Charge', 
          metadata: {'order_id': '6735'} 
         }, function (err, charge) { 
        if (err && err.type === "StripeCardError") { 
         return res 
           .status(status.BAD_REQUEST) 
           .json({error: err.toString()}); 
        } 

        if (err) { 
         console.log(err); 
         return res 
           .status(status.INTERNAL_SERVER_ERROR) 
           .json({error: err.toString()}); 
        } 

        req.user.data.cart = []; 

        req.user.save(function() { 
         return res.json({id: charge.id}); 
        }); 
       }); 

Von meiner Client-Seite ich versuche Anfrage wie folgt zu senden:

superagent 
    .post(url) 
    .send({ 
    stripeToken: { 
      number: '4242424242424242', 
      exp_month: 12, 
      exp_year: 2017, 
      cvc: '123' 
       } 
       }) 
    .end(function (error, res) { 
     console.log(error); 
     console.log(res.text); 
    }); 

ich habe versucht, in meinem Rückruf auf Server- und Client-Seite einzuloggen, aber es gibt nicht alles ... Wer weiß, was ist Problem?

Antwort

1

Können Sie überhaupt Protokolle erstellen? Ich würde versuchen, etwas einzuloggen, um genau zu sehen, was schief gehen könnte.

console.log("Ready to create a charge!"); 

Stripe.charges.create({ 
    amount: totalCostUSD, 
    currency: 'usd', 
    source: req.body.stripeToken, 
    description: 'Example Charge', 
    metadata: {'order_id': '6735'} 
    }, function (err, charge) { 

    console.log("Entered ChargeCreate Callback Function."); 

    if (err && err.type === "StripeCardError") { 
     console.log("Encountered Stripe error."); 
     return res.status(status.BAD_REQUEST).json({ 
     error: err.toString() 
     }); 
    } 

    if (err) { 
     console.log("Encountered unknown error."); 
     return res.status(status.INTERNAL_SERVER_ERROR).json({ 
     error: err.toString() 
     }); 
    } 

    req.user.data.cart = []; 

    req.user.save(function() { 
     console.log("Entered UserSave Callback Function."); 
     return res.json({id: charge.id}); 
    }); 
    } 
); 

Wenn Sie keine Protokolle zu sehen, ist es möglich, dass Sie nicht in der Lage sind, die STDOUT- von Ihrem Node.js Server anzuzeigen? Führst du das lokal?

+0

Überprüfen Sie, ich fand Lösung .... –

0

fand ich, was das Problem ist, ist mein Unit-Test in 2000 ms auszuführen begrenzt und nach, dass es nicht ...

Aber für hiting Streifen api es mehr Zeit benötigen, auszuführen ...

Also um den Zeitraum der Ausführung zu verlängern, habe ich diesen Inside-Test:

it("Can chackout", function (done) { 

     this.timeout(15000); 
     setTimeout(done, 15000);