Javascript 未呈现贝宝支付墙-错误“;无效的批准URL“;
我正在我们的网站上集成Javascript 未呈现贝宝支付墙-错误“;无效的批准URL“;,javascript,php,laravel,paypal,paypal-rest-sdk,Javascript,Php,Laravel,Paypal,Paypal Rest Sdk,我正在我们的网站上集成PayPal环境。我们正在使用Github上提供的当前版本的PayPal PHP SDK(1.7.4)。我们在IIS10上使用PHP7.0.7 首先,我们按照《集成指南》中的说明创建付款。我们收到付款的有效批准url(格式: .). 我在浏览器中手动检查了url 付款在控制器中创建并提供给视图 控制器: function showPaymentWall() { $payment = $this->createPayment(); return
PayPal
环境。我们正在使用Github上提供的当前版本的PayPal PHP SDK
(1.7.4)。我们在IIS
10上使用PHP
7.0.7
首先,我们按照《集成指南》中的说明创建付款。我们收到付款的有效批准url(格式:
.).
我在浏览器中手动检查了url
付款在控制器中创建并提供给视图
控制器:
function showPaymentWall() {
$payment = $this->createPayment();
return view("payments.paypal.paymentWall",['payment'=>$payment, 'approval_url'=> $this->approvalUrl]);
}
在方法createPayment
中设置approval\u url
以下是视图中的代码:
@extends('layouts.master')
@section('title')
Upgrade
@endsection
@section('content')
<div class="container">
<div class="row">
<div class="form-group col-xs-12 col-sm-12 col-md-12 col-lg-12">
<div>{{ $approval_url }}</div>
<div id="ppplus"></div>
</div>
</div>
</div>
@endsection
@section('scriptIndividualJSCode')
<script src="https://www.paypalobjects.com/webstatic/ppplus/ppplus.min.js" type="text/javascript"></script>
<script type="application/javascript">
var ppp = PAYPAL.apps.PPP({
"approvalUrl": "{{ $approval_url }}",
"placeholder": "ppplus",
"mode": "sandbox",
"country": "DE"
});
</script>
@endsection
@extends('layouts.master'))
@章节(“标题”)
升级
@端部
@节(“内容”)
{{$approval\u url}
@端部
@节(“scriptIndividualJSCode”)
var ppp=PAYPAL.apps.ppp({
“approvalUrl”:“{{$approval\u url}}”,
“占位符”:“ppplus”,
“模式”:“沙盒”,
“国家”:“德”
});
@端部
如您所见,有效的url显示在ppplus容器之前。因此,很明显,该url是有效的,并且由控制器正确给出。
但是当我访问页面时,我总是会遇到以下错误:
当我通过控制台检查原因时,它会显示“无效的批准url”
有人知道为什么或者我可以检查什么来前进吗?
提前感谢您的帮助 我找了很久才找到原因 结果是,
&审批URL中的代码>必须替换为&
。
然后它成功了。这可以通过PHP
函数htmlspecialchars\u decode()
完成(请参阅)。以下是我为javascript
部分编写的代码:
<script type="application/javascript">
var ppp = PAYPAL.apps.PPP({
"approvalUrl": "<?php echo htmlspecialchars_decode($approval_url); ?>",
"placeholder": "ppplus",
"mode": "sandbox",
"country": "DE",
"language": "de_DE"
});
</script>
var ppp=PAYPAL.apps.ppp({
“批准”:“批准”,
“占位符”:“ppplus”,
“模式”:“沙盒”,
“国家”:“德”,
“语言”:“德鲁德”
});
谢谢你的提示,节省了我很多时间。如果有人使用Symfony
和Twig
,可以使用以下命令以正确的格式插入URL
:{{approval\u URL | raw}