Laravel:未找到路线错误:

时间:2015-11-24 10:24:39

标签: php laravel-5.1

我正在编写电子邮件验证代码,我的网址生成为:

http://example.com/auth/verify/InR9Jn%2FF6OpDpBlUpw5fXfbMgT6thonODPua0iX4AKI%3D

我使用urlencodbase64之后对其进行编码,因为Not Found Exception签到该路由,我获得了%。路线定义为:

Route::get(
    'auth/verify/{confirmation_code}',

如何解决?如何使%符号可以接受?

3 个答案:

答案 0 :(得分:0)

根据您的代码,您忘记设置控制器和操作的名称。

Route::get('auth/verify/{confirmation_code}', 'NameOfYourController@action');

答案 1 :(得分:0)

也许编码'%'在URL中签名为"%25"?百分号用于编码特殊字符,因此您也必须对符号本身进行编码。

答案 2 :(得分:0)

我认为这可能会有所帮助:

Accepting an encoded URL in a Laravel 4 route

正如@Phil Sparks所提到的,你可以这样做:

Route::get('add/{encoded_url}', function($encoded_url)
{
    return 'The URL is: '.rawurldecode($encoded_url);
})->where('encoded_url', '.*');

同时检查本的回答。

相关问题