问题描述
这是我的支付网关页面
<?PHP
$MERCHANT_KEY = "WTLZQBOb"; // add your id
$SALT = "6MyvUWk9pP"; // add your id
//$PAYU_BASE_URL = "https://test.payu.in";
$PAYU_BASE_URL = "https://secure.payu.in";
$action = '';
$txnid = substr(hash('sha256',mt_rand() . microtime()),20);
$posted = array();
$posted = array(
'key' => $MERCHANT_KEY,'txnid' => $txnid,'amount' => 1,'firstname' => Auth::user()->name,'email' => Auth::user()->email,'productinfo' => 'PHP Project Subscribe','surl' => 'http://infohp.in/admin/callback-pay-u-money','furl' => 'http://infohp.in/admin/cancel-payment','service_provider' => 'payu_paisa',);
if(empty($posted['txnid'])) {
$txnid = substr(hash('sha256',20);
}
else
{
$txnid = $posted['txnid'];
}
$hash = '';
$hashSequence = "key|txnid|amount|productinfo|firstname|email|udf1|udf2|udf3|udf4|udf5|udf6|udf7|udf8|udf9|udf10";
if(empty($posted['hash']) && sizeof($posted) > 0) {
$hashVaRSSeq = explode('|',$hashSequence);
$hash_string = '';
foreach($hashVaRSSeq as $hash_var) {
$hash_string .= isset($posted[$hash_var]) ? $posted[$hash_var] : '';
$hash_string .= '|';
}
$hash_string .= $SALT;
$hash = strtolower(hash('sha512',$hash_string));
$action = $PAYU_BASE_URL . '/_payment';
}
elseif(!empty($posted['hash']))
{
$hash = $posted['hash'];
$action = $PAYU_BASE_URL . '/_payment';
}
?>
<html>
<head>
<Meta name="csrf-token" content="{{ csrf_token() }}">
<script>
var hash = '<?PHP echo $hash ?>';
function submitPayuForm() {
if(hash == '') {
return;
}
var payuForm = document.forms.payuForm;
payuForm.submit();
}
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('Meta[name="csrf-token"]').attr('content')
}
});
</script>
</head>
<body onload="submitPayuForm()">
Processing.....
<form action="<?PHP echo $action; ?>" method="post" name="payuForm"><br />
<input type="hidden" name="key" value="<?PHP echo $MERCHANT_KEY ?>" /><br />
<input type="hidden" name="hash" value="<?PHP echo $hash ?>"/><br />
<input type="hidden" name="txnid" value="<?PHP echo $txnid ?>" /><br />
<input type="hidden" name="amount" value="1" /><br />
<input type="hidden" name="firstname" id="firstname" value="<?=Auth::user()->name?>" /><br />
<input type="hidden" name="email" id="email" value="<?=Auth::user()->email?>" /><br />
<input type="hidden" name="productinfo" value="PHP Project Subscribe"><br />
<input type="hidden" name="surl" value="http://infohp.in/admin/callback-pay-u-money" /><br />
<input type="hidden" name="furl" value="http://infohp.in/admin/cancel-payment" /><br />
<input type="hidden" name="service_provider" value="payu_paisa" /><br />
<?PHP
if(!$hash) { ?>
<input type="submit" value="Submit" />
<?PHP } ?>
</form>
</body>
</html>
这是我的网址链接
<input type="hidden" name="surl" value="http://infohp.in/admin/callback-pay-u-money" /><br />
<input type="hidden" name="furl" value="http://infohp.in/admin/cancel-payment" /><br />
我试图在我的 laravel 7 项目中使用 payUmoney,但出现错误
当我尝试在 laravel 7 的 URL 页面中获取 payuMoney 付款响应状态并重定向时,请您帮我解决该问题。请尽快帮助我。
解决方法
app/Http/Middleware/VerifyCsrfToken.php 上的这条路由除外(数组除外)
$except = ['*cancel-payment*'];