2017-02-10 7 views
0

平均スタックが新しく、MeanJS(meanjs.org)のバージョン0.4.2を使用しています。私はプラットフォームにストライプを統合することに固執しています。私は統合のためにStripe Angularを使用しています。MeanJsボイラープレートにストライプを組み込む

これまでのところ、新しいコントローラを作成しました。必要なファイルをすでにヘッダーに追加しました。コントローラは次のようになります。

(function() { 
'use strict'; 
angular 
.module('availabilities') 
.controller('StripepayController', StripepayController); 

StripepayController.$inject = ['$scope', '$http']; 

function StripepayController($scope, $http) { 
    $scope.saveCustomer = function(status, response) { 
     //console.log('striped'); 
     $http.post('/stripecharge', { token: response.id }); 
    }; 
} 
})(); 

私はチュートリアルのようにビューを作成しました。私のモジュールのサーバーのルートページへのルートを追加しました:

// routes for stripe 
app.route('/stripecharge') 
.all(availabilities.stripePay); 

サーバコントローラは、以下のミドルウェアました:

exports.stripePay = function(req, res) { 
var stripe = require('stripe')('secret_key'); 
var token = req.body.stripeToken; 
var charge = stripe.charges.create({ 
    amount: 1000, 
    currency: 'usd', 
    description: 'Example charge', 
    source: token, 
}, function(err, charge) { 
    // asynchronously called 
}); 
}; 

トークンが作成されつつあるが、私はカードに請求することはできません。私がどのように前進するかについての助けは素晴らしいだろう。

また、誰かがフォームからMEANjsでフォームへの提出がどのようにサーバーに行われるのか説明することができます。私はそれをうまく理解できませんでした。

ありがとうございます。

答えて

1

多くの研究をしてレッスンに戻ってから、最終的に問題は解決しました。助けてくれてありがとう@FloatingLomas。

実際にはサーバーコントローラのストライプノードモジュールの参照が欠落していました。ここに私のサーバーは、今どのように見えるかだ - 私は

var stripe = require('stripe')('My_Secret_key'); 

私はコンソールで定義されていない「ストライプ」のエラーを取得した

を追加した特急コントローラの上に

exports.stripePay = function(req, res) { 
    var token = req.body.token; // Using Express 
    // Charge the user's card: 
    var charge = stripe.charges.create({ 
     amount: 1000, 
     currency: 'usd', 
     description: 'Example charge', 
     source: token, 
    }, function(err, charge) { 
     if (err) { 
      res.send(500, err); 
     } else { 
      res.send(204); 
     } 
    }); 
}; 

ノードモジュールが欠落していたとして、 。ストライプノードモジュールを追加しました

npm install --save stripe 

すべては今や風邪のように動作するようです。

0

AngularアプリでStripe.jsまたはCheckoutのいずれかを使用し、結果のトークンをNode.jsエンドポイントにPOSTする必要があります。

+0

正確には、私は理解できないものです。 – Ajasra

+0

角度コードはStripe.jsまたはCheckoutでどのように機能しますか?あなたのサーバーのログに何かが含まれていますか? – floatingLomas

+0

いいえ、それはログに記録されませんが、トークンは作成されます。私はそれを記録しながらトークンを見ることができますが、他の呼び出しはありません。私はサーバーに呼び出しを渡すことができません。 – Ajasra

関連する問題