如何将 PayU 支付网关与 PhoneGap 应用程序集成?
哪种方法是正确的?
在安卓的情况下
如果有人对此提供一些意见会有所帮助。
最佳答案
这是 sample app 用于将 payu 集成到手机间隙中
您可以找到 html 和 javascript 代码 here 。
此示例应用程序使用没有 SDK 的 payu。
更新:
如果您使用的是角度
$scope.payuOrder = function(form) {
$scope.payu_params = {
key: "xx@#EX",
salt: "Dda3dqCx",
txnid:"qw"+Math.floor(Math.random() * 100000000000),
amount:"1230",
productinfo:"Product info",
firstname:"Ankit",
email:customer."[email protected]",
user_credentials:"xx@#EX:unique_id",
udf1:"",
udf2:"",
udf3:"",
udf4:"",
udf5:"",
offer_key:"",
card_bin:"",
surl: encodeURI("https://payu.herokuapp.com/success"), //url needs to be encode
furl: encodeURI("https://payu.herokuapp.com/failure") // url needs to be encode
};
var hash_string = $scope.payu_params.key+"|"+$scope.payu_params.txnid+"|"+$scope.payu_params.amount+"|"+
$scope.payu_params.productinfo+"|"+$scope.payu_params.firstname+"|"+
$scope.payu_params.email+"|"+$scope.payu_params.udf1+"|"+$scope.payu_params.udf2+"|"+
$scope.payu_params.udf3+"|"+$scope.payu_params.udf4+"|"+$scope.payu_params.udf5+"||||||"+$scope.payu_params.salt;
console.log("HashString = "+hash_string);
$scope.payu_params.hash = CryptoJS.SHA512(hash_string).toString(CryptoJS.enc.Base64);
console.log("Hash = "+$scope.payu_params.hash);
var payu_params_string = '';
for (var key in $scope.payu_params) {
payu_params_string += key + "=" + $scope.payu_params[key] + "&";
}
payu_params_string = payu_params_string.slice(0,-1);
console.log(payu_params_string);
var bytes = [];
for (var i = 0; i < payu_params_string.length; ++i) {
bytes.push(payu_params_string.charCodeAt(i));
}
payu_params_string.toString().getBytes());
var winURL = "https://test.payu.in/_payment";
var form = document.createElement("form");
form.setAttribute("method", "post");
form.setAttribute("action", winURL);
for (var i in $scope.payu_params) {
if ($scope.payu_params.hasOwnProperty(i)) {
var input = document.createElement('input');
input.type = 'hidden';
input.name = i;
input.value = $scope.payu_params[i];
form.appendChild(input);
}
}
var options = {
location: 'no',
clearcache: 'yes',
toolbar: 'no'
};
$cordovaInAppBrowser.open(winURL, '_blank', options)
.then(function(event) {
$rootScope.$on('$cordovaInAppBrowser:loadstop', function(e, event){
// insert form on loaded window
document.body.appendChild(form);
form.submit();
document.body.removeChild(form);
});
})
.catch(function(event) {
// error
});
}
关于cordova - 将 PayU 与 PhoneGap 应用程序集成,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31717253/