繁体   English   中英

处理laravel中生成的URL?

[英]Handling generated urls in laravel?

作为学校项目的一部分,我正在缩短链接,

Route::get('{short_url}', array('uses' => 'UrlController@shortUrlRedirect');

这个功能单独工作,但因为我有其他功能,如

Route::post('register', array('uses' => 'HomeController@doRegister'));

每当example.com/anylink

现在使用它,它仅由一个函数处理。

我找到的工作解决方案是做类似的事情:

Route::get('url/{short_url}', array('uses' => 'UrlController@shortUrlRedirect');

但是当然有一个链接缩短,目标是尽可能少的字符。

在laravel中处理这个问题的可能方法的任何想法?

routes.php文件中的较早或“更高”是路由,它获得的优先级越高,因此如果您定义两个相同的路由或两个匹配一个模式的路由,就像在您的示例中一样,第一个将被执行。

所以你应该更早地定义register路由,因为它不应该被{short_url}覆盖。

以下是解释:路线: 先进先出

TL; DR: Laravel接收请求,并使用请求的URI来查找迭代路由文件的匹配模式,当它找到一个时,它会break; 循环。

暂无
暂无

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

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