Angularjs 使用NodeJS集成CCAvenue

Angularjs 使用NodeJS集成CCAvenue,angularjs,node.js,ccavenue,Angularjs,Node.js,Ccavenue,我对支付网关完全是个新手。我想使用NodeJS将CCAvenue集成到我的web应用程序中。我已经从npm安装了CCAVENCE软件包,但我不知道如何付款 如果有人给我指点CCAVENCE集成手册以外的教程,我会很高兴。首先,我建议使用CCAVENCE提供的nodejs集成工具包(非无缝) 1) 按原样在UI组件中添加来自集成工具包的数据表单 2) 使用ajax调用rest api,如下所示: app.controller("changeProfileController", function(

我对支付网关完全是个新手。我想使用NodeJS将CCAvenue集成到我的web应用程序中。我已经从npm安装了CCAVENCE软件包,但我不知道如何付款


如果有人给我指点CCAVENCE集成手册以外的教程,我会很高兴。

首先,我建议使用CCAVENCE提供的nodejs集成工具包(非无缝)

1) 按原样在UI组件中添加来自集成工具包的数据表单

2) 使用ajax调用rest 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) 从集成工具包中调用ccAvenueRequestHandler代码,它将生成如下html表单

// 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);
//使用您自己的凭据
var workingKey=“AECGKJBBSERVFBG”;
var accessCode=“ab4512vhvweb56g784433”;
//formObject是从客户端发送的数据
var contentArray=[];
_.每个(窗体对象、函数(值、键、数据){
contentArray.push(key+“=”+数据[key]);
});
body=contentArray.join(&);
encRequest=ccav.encrypt(主体,工作密钥);
var formBody='document.redirect.submit();';
回复(格式体);
4) 因为Angularjs不提供到另一个url的直接路由。您必须在UI中创建一个DOM,在这里您可以在响应(2)中呈现html表单,这将重定向到付款页面

// HTML Code
<div ng-bind-html='myText'></div>
//HTML代码
5) 从工具包中添加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
var workingKey=“AECGKJBBSERVFBG”,//输入由CCA共享的32位密钥。
ccavResponse=ccav.decrypt(request.payload.encResp,workingKey);
var strArray=ccavResponse.split(“&”);
var resObject={};
对于(变量i=0;i
您可以使用
ccavenue
npm包


一旦HTML在成功响应时呈现在div中,重定向是否会自动发生?如果是,代码中到底是什么告诉表单这样做的?如果否,我如何在没有用户干预的情况下将其设置为是?重定向会自动进行,因为您生成的html表单包含post方法和自动提交脚本。。请参阅“formBody”。我也正在与CCA整合。只有一个问题:我们是否可以从节点进程直接“提交”表单数据到CCAvenue?是的,您可以。。。您必须启用Cors。您是否成功地将ccavenue与angularjs集成?