繁体   English   中英

Laravel 5.2提交表单到外部URL

[英]Laravel 5.2 Post form to external URL on submit

我正在使用第三方付款服务。

<form name="form1" method="post" action="https://exampledomain.com/postpayment.php">
<input type="hidden" name="CRESecureID" value="1"/>
<input type="hidden" name="trans_type" value=" 2"/>
<input type="hidden" name="content_template_url" value="https://example.com/enterpaymentdetails.html"/>
<input type="hidden" name="allowed_types" value=" 3"/>
<input type="hidden" name="total_amt" value="$payment->amount"/>
<input type="hidden" name="collect_total_amt" value="$payment->total"/>
<input type="hidden" name="sess_id" value="e91dd8af53j35k072s0bubjtn7"/>
<input type="hidden" name="sess_name" value="session"/>
<input type="hidden" name="return_url" value="https://example.com/return.html"/>

<p><label> <input type="submit" name="submit" value="submit"/> </label></p>

如何将这些变量正确发送到外部URL? 我应该在控制器中这样做吗? 一个例子会有所帮助。

谢谢

实现此目的的最佳方法是:

将表单数据发布到您自己的URL之一,然后使用Guzzle客户端或curl请求将此数据发布到所需的外部URL。

这种方法将帮助您跟踪来自外部URL的响应,并在需要时进行操纵或使用。

希望这可以帮助。

您可以在控制器上执行此操作,一个好的方法是将这些变量保存在控制器上,将它们传递到存储库/服务层,执行所有验证检查,一旦一切正常,就通过CURL POST发送它们。

您可以使用“ Request来验证表单字段。 验证,处理和发送。

这是通过CURL发布发送数据的代码

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "URL_OF_API");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 100);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postFieldsArray);
$data = curl_exec($ch);
curl_close($ch);

尝试在表单操作中添加双斜杠

例如<form action="{{'//newsite.com/whatever'}}" >

就这些。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM