在Apache服务器中DELETE请求被视为GET如何修复它?

时间:2016-04-01 20:31:17

标签: php apache rest laravel

我有一个用Laravel构建的REST api。在我添加的路线中:

DELETE /v1/category/{category} App\Http\Controllers\CategoriesController@destroy

在我的xampp本地计算机上,每个工作正常,并触发destroy方法。但是当我请求该路由时,它在生产服务器上将其视为GET请求并返回该类别的记录而不是删除它。

要解决此问题,我避免使用DELETE请求,因此我将路由注册为:

GET /v1/category/delete/{category} App\Http\Controllers\CategoriesController@destroy

为什么DELETE请求被视为GET

的任何想法
  

更新:以下是routes.php文件:

<?php

    /**
     * Api Route Group V1
     */
    RestRoute::group(['version' => 'v1', 'namespace' => 'App\Http\Controllers'], function () {

        RestRoute::group(['prefix' => 'v1'], function () {

            RestRoute::resource('articles', 'ArticlesController');

            RestRoute::get('posts/user/{id}', 'PostsController@userPosts');
            RestRoute::resource('posts', 'PostsController');
            RestRoute::resource('items', 'ItemsController');

            RestRoute::get('recipes/all', 'RecipesController@showAll');
            RestRoute::resource('recipes', 'RecipesController');
            RestRoute::resource('profile', 'ProfileController');

            RestRoute::get('tag', 'TagsController@index');
            RestRoute::get('tag/{tag}', 'TagsController@show');
            RestRoute::get('tag/{tag}/articles', 'TagsController@tagArticles');


            RestRoute::post('category', 'CategoriesController@store');
            RestRoute::get('category/list', 'CategoriesController@CategoriesList');
            RestRoute::get('category/recipes/{category}', 'CategoriesController@showRecipes');
            RestRoute::get('category/{category}', 'CategoriesController@show');
            RestRoute::patch('category/{category}', 'CategoriesController@update');
            RestRoute::delete('category/{category}', 'CategoriesController@destroy');


            RestRoute::post('authenticate', 'AuthenticateController@authenticate');
            RestRoute::get('authenticate/logout', 'AuthenticateController@logout');
            RestRoute::post('register', 'AuthenticateController@store');

        });

    });

0 个答案:

没有答案