我使用此软件包进行本地化https://github.com/mcamara/laravel-localization,除了一个POST请求外,它在大多数情况下都能正常工作。
当我尝试访问时:
Route::group(
[
'prefix' => LaravelLocalization::setLocale(),
'middleware' => ['localeSessionRedirect', 'localizationRedirect', 'auth'],
],
function () {
Route::post('bsSearch', 'BrandSpendingsController@search')->middleware('premium');
}
我得到MethodNotAllowedHttpException
...当我将其切换到GET
时,它运行正常......但它适用于英语。如果我将网址切换为http://localhost/de/bsSearch,则会引发错误。
Route::get('bsSearch', 'BrandSpendingsController@search')->middleware('premium');
我真的不确定为什么因为这个工作正常而且它也是POST
方法:
Route::post('editUserProfile/{id}', 'UserController@edit');
我使用的是Laravel 5.3。
修改
英文网址有效,因为我在'hideDefaultLocaleInURL' => true,
中设置laravellocalization.php
,并在网址中隐藏了“en”前缀。如果我将其设置为false
,它也会导致英语错误。