如何解决如何使用来自函数的参数创建URL? Laravel路由
我正在发送一个散列的URL,当我得到它时,我必须在Laravel上显示一个视图,所以我在控制器上有这些功能以及一些路由:
这是我的路线:
Route::post('/sendLink','Payment\PaymentController@getPaymentLink');
Route::get('/payment?hash={link}','Payment\PaymentController@show');
这是我在控制器上具有的功能:
public function getPaymentLink (Request $request){
$budgetId = $request['url.com/payment/payment?hash'];
$link = Crypt::decryptString($budgetId);
Log::debug($link);
//here to the show view i wanna send the link with the id hashed,thats why i dont call show($link)
$view = $this->show($budgetId);
}
public function show($link) {
$config = [
'base_uri' => config('payment.base_uri'),];
$client = new Client($config);
$banking_entity = $client->get('url')->getBody()->getContents();
$array = json_decode($banking_entity,true);
return view('payment.payment-data')->with('banking_entity',$array);
}
这将收到“找不到页面”消息错误。 我想做的是,当客户单击链接时,我将格式为“ url.com/payment/payment?hash=fjadshkfjahsdkfhasdkjha”的邮件发送给他,触发getPaymentLink函数,这样我就可以从该哈希中解密并还给他看风景。
解决方法
无需获取路由?hash={link}
它是查询参数,它将与$request
一起接收
喜欢:
$request->hash
// or
$request->get('hash')
,
您需要这样定义路线:
Device
您现在可以简单地在Controller方法中使用它,如下所示:
Route::get('/payment/{hash}','Payment\PaymentController@show');
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。