2016-04-02 14 views
1

私は決済ゲートウェイの初心者です。 NodeJSを使用してCCAvenueを私のWebアプリケーションに統合したいと思います。 npmからCCAvenueパッケージをインストールしましたが、支払いについて何も考えていません。NodeJSを使用したCCAvenueの統合

誰かがCCAvenue統合マニュアル以外のチュートリアルを指差してくれたら素晴らしいと思います。

+0

ccavenueとangularjsの統合に成功しましたか? –

答えて

2

まず第一に、私はCCAvenue(非シームレス)

1)によって提供されnodejsのための統合キットを使用することをお勧めしたいと思い、それは

であるとして、あなたのUIコンポーネントでの統合キットからデータ形式を追加

2)次のようにAJAXを使用して、残りのAPIを呼び出す:

app.controller("changeProfileController", function($scope, $sce){ 
    var dataObject = $("#paymentDataForm").serializeArray(); 
    $.ajax({ 
     type: "POST", 
     url: restApiServer.ReSTFulAPIHost + '/ccavRequestHandler', 
     data: dataObject, 
     cache : false, 
     processData: false, 
     success: function (res) { 
     //console.log(data); 
     $scope.myText = $sce.trustAsHtml(res.data); 
     }, 
     dataType: 'json' 
    }); 
}); 

3)

を次のようにHTMLフォームを生成する統合キットからccAvenueRequestHandlerコードを呼び出します
// Use your own credentials 
var workingKey = "AECGKJBBSERVFBG"; 
var accessCode = "ab4512vhvweb56g784433"; 
// formObject is data send from client 
var contentArray = []; 
_.each(formObject, function(value, key, data){ 
    contentArray.push(key+"="+data[key]); 
}); 
body = contentArray.join("&"); 
encRequest = ccav.encrypt(body,workingKey); 
var formBody = '<form id="nonseamless" method="post" name="redirect" action="https://secure.ccavenue.com/transaction/transaction.do?command=initiateTransaction" ><input type="text" name="access_code" id="access_code" value="'+ accessCode +'" style="display:none;" ><input type="text" id="encRequest" name="encRequest" value="'+ encRequest +'" style="display:none;" ><script language="javascript">document.redirect.submit();</script></form>'; 
return reply(formBody); 

4)Angularjは別のURLへの直接ルートを提供しません。あなたが応答するHTMLフォームをレンダリングすることができUI内の1つのDOMを作成する必要があります(2)、そこからデータを)支払いページ

// HTML Code 
<div ng-bind-html='myText'></div> 

5にccavenueあなたの応答を処理するためのキットからccavenueResponseハンドラを追加し、復号化するためにリダイレクトしますccavenueと応答データが含まれているリンクするユーザーをリダイレクト

var workingKey = "AECGKJBBSERVFBG", //Put in the 32-Bit key shared by CCAvenues. 
ccavResponse = ccav.decrypt(request.payload.encResp,workingKey); 
var strArray = ccavResponse.split("&"); 
var resObject = {}; 
for(var i=0; i< strArray.length; i++){ 
    var tempArray = strArray[i].split("="); 
    resObject[tempArray[0]] = tempArray[1]; 
} 
// resObject will contains the payment information 
// You can use this data as you want 
+0

HTMLが成功応答でdivにレンダリングされると、リダイレクトは自動的に行われますか?はいの場合は、正確にコードでフォームにそうするよう指示しますか?そうでない場合は、ユーザーの介入なしにどうすればいいですか? –

+0

生成したhtmlフォームにpostメソッドと自動送信スクリプトが含まれているため、リダイレクトが自動的に行われます。「formBody」を参照してください。 – user3639680

+0

私はCCAvenueとも統合しています。ちょうど1つの質問:NodeプロセスからフォームデータをCCAvenueに直接提出できますか? –

関連する問題