首页 文章

Laravel如何路由旧网址

提问于
浏览
1

我正在使用Laravel 4 .

我有一个需要可路由的旧网址 . 它的目的是什么并不重要,但它存在于paypal系统中,并且会定期调用但不能更改(我知道这很荒谬) .

我意识到这不是url应该在Laravel中采用的格式,但这是将被调用的url,我需要找到一种方法来路由它:

http://domain.com/forum/index.php?app=subscriptions&r_f_g=xxx-paypal

(每个请求都会有不同的xxx)

我无法弄清楚如何使用laravel路由它,我想将它路由到方法PaypalController @ ipbIpn所以我尝试过这样的事情:

Route::post('forum/index.php?app=subscriptions&r_f_g={id}-paypal', 'PaypalController@ipbIpn');

但这不起作用,事实上我甚至无法让它工作:

Route::post('forum/index.php', 'PaypalController@ipbIpn');

但这会:

Route::post('forum/index', 'PaypalController@ipbIpn');

所以问题是如何使用Laravel路由网址,因为它位于此问题的顶部?

为了完整起见,我应该说这总是一个帖子而不是一个获取,但这不应该对解决方案产生任何影响 .

1 回答

  • 0

    用这个:

    Route::post('forum/{file}', 'PaypalController@ipbIpn');
    

    然后在控制器中使用

    public function forum($file) {
                $request = Route::getRequest();
    
                $q = (array) $request->query; // GET
                $parameters = array();
                foreach($q as $key => $pararr) {
                    $parameters = array_merge($parameters, $pararr);
                }
        }
    

    然后,您可以通过以下方式访问get参数:

    echo $parameters['app'];
    

相关问题