路由不生效?The GET method is not supported for this route



已经清除了缓存(其实也没有生成过缓存)

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

这是我的API路由文件

Route::group([
    'middleware' => 'api',
], function ($router) {
    # 测试
    Route::post('bind_all', 'Api\AuthController@bindAll')->name('bind_all');
    //登陆
    Route::post('login', 'Api\AuthController@login')->name('login');
    //绑定
    Route::post('bind_client_id', 'Api\AuthController@bindClientId')->name('bind_client_id');
    //退出登录
    Route::post('logout', 'Api\AuthController@logout')->name('logout');

    //个人信息
    Route::get('my', 'Api\AuthController@my')->name('my');

    //矿山
    Route::get('mine', 'Api\MineController@list')->name('mine');
});
5年前 评论
xiaopi 5年前
zxdstyle 5年前
勇敢的心 (作者) (楼主) 5年前
勇敢的心 (作者) (楼主) 5年前
讨论数量: 4

这种情况一般是匹配到其他路由了,你看看你其他路由规则呢

5年前 评论
勇敢的心 (楼主) 5年前

这是我的API路由文件

Route::group([
    'middleware' => 'api',
], function ($router) {
    # 测试
    Route::post('bind_all', 'Api\AuthController@bindAll')->name('bind_all');
    //登陆
    Route::post('login', 'Api\AuthController@login')->name('login');
    //绑定
    Route::post('bind_client_id', 'Api\AuthController@bindClientId')->name('bind_client_id');
    //退出登录
    Route::post('logout', 'Api\AuthController@logout')->name('logout');

    //个人信息
    Route::get('my', 'Api\AuthController@my')->name('my');

    //矿山
    Route::get('mine', 'Api\MineController@list')->name('mine');
});
5年前 评论
xiaopi 5年前
zxdstyle 5年前
勇敢的心 (作者) (楼主) 5年前
勇敢的心 (作者) (楼主) 5年前
xiaopi

抛出的异常是请求方法不对,有这个路由,但是不被允许。所以问题可能是: 1.接口访问的路由不是你写的这个,是另一个api 2.路由缓存,需要执行php artisan route:clear ps:检测路由提供者,是否api路由设置了prefix=api, 从你这个路由来看,并未设置prefix,所以你访问的api/my肯定是在路由提供者里指定的。检查下路由是否正确。

5年前 评论
Route::get('/my', 'Api\AuthController@my')->name('my');

然后请求/api/my,如果还是不行,看看是不是开启opcache缓存,如果开启,就先关闭!

5年前 评论
勇敢的心 (楼主) 5年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!