Meteor: Korrekte Verwendung der Meteor.wrapAsync auf dem server

Hintergrund

Ich versuche zu integrieren, Streifen Zahlungen in meine Website. Ich brauche zum erstellen eines stripe-user mit meiner private Streifen-Taste. Ich bin die Speicherung dieser Schlüssel auf meinem server, und den Aufruf einer server-Methode um den Benutzer zu erstellen. Vielleicht gibt es einen anderen Weg, dies zu erreichen? Hier ist die stripe-api (kopiert unten für die Bequemlichkeit):
https://stripe.com/docs/api/node#create_customer

//stripe api call
var Stripe = StripeAPI('my_secret_key');

Stripe.customers.create({
  description: 'Customer for [email protected]',
  card: "foobar" //obtained with Stripe.js
}, function(err, customer) {
  //asynchronously called
});

Meine versuche und Ergebnisse

Habe ich mit dem gleichen client-code mit verschiedenen server-code. Alle versuche sofort undefined auf die client-Konsole.log (...), sondern gebe die richtige Antwort auf die server-Konsole.log(...):

//client
Meteor.call('stripeCreateUser', options, function(err, result) {
  console.log(err, result);
});

//server attempt 1
var Stripe = StripeAPI('my_secret_key');

Meteor.methods({
    stripeCreateUser: function(options) {  
        return Meteor.wrapAsync(Stripe.customers.create({
            description: 'Woot! A new customer!',
            card: options.ccToken,
            plan: options.pricingPlan
        }, function (err, res) {
            console.log(res, err);
            return (res || err);
        }));
    }
});

//server attempt 2
var Stripe = StripeAPI('my_secret_key');

Meteor.methods({
    stripeCreateUser: function(options) {  
        return Meteor.wrapAsync(Stripe.customers.create({
            description: 'Woot! A new customer!',
            card: options.ccToken,
            plan: options.pricingPlan
        }));
    }
});

Ich habe auch versucht beide ohne Meteor.wrapAsync.

BEARBEITEN - ich bin auch mit diesem Paket:
https://atmospherejs.com/mrgalaxy/stripe

InformationsquelleAutor der Frage Adam | 2014-10-06

Schreibe einen Kommentar