Birincisi, o
olduğu gibi
1) UI bileşeninde entegrasyon kitinden dataform ekleyin (eksiz olmayan) CCAvenue tarafından sağlanmaktadır nodejs için entegrasyon kiti kullanılarak önermek istiyorum
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'
});
});
aşağıdaki gibi hTML formunu oluşturur Entegrasyon kiti ccAvenueRequestHandler kodu çağrı) aşağıdaki gibidir:
2) ajax kullanarak geri kalan API çağrısı
// 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) Angularjs başka bir URL'ye doğrudan yol sağlamadığından. Eğer yanıt olarak html formu işleyebilen arayüzünde bir DOM oluşturmak zorunda (2), hangi verileri) ödeme sayfasını
// HTML Code
<div ng-bind-html='myText'></div>
5 CCAvenue yanıtınızı işlemek için kitinden ccavenueResponse işleyicisi ekleyin, azalmak için yönlendirir CCAvenue ve yanıt verilerini içeren bağlamak için kullanıcıyı yönlendirme
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
ccavenue angularjs ile entegre edilmesinde herhangi bir başarı elde ettiniz mi? –