当前位置: 首页 > 知识库问答 >
问题:

方法在Post方法上不允许HttpException

权黎昕
2023-03-14

从Laravel开始,我在尝试发布到我的一个页面时遇到了一个问题。

我正在使用邮递员创建一个帖子请求到我的 /clock页面。

这篇文章发送了一个简单的Json,只有一个字段:

以下是邮报的标题:

我的路线当前位于路线/api中。php文件夹,并包含以下内容:

<pre>
    <?php

    use Illuminate\Http\Request;

    /*
    |--------------------------------------------------------------------------
    | API Routes
    |--------------------------------------------------------------------------
    |
    | Here is where you can register API routes for your application. These
    | routes are loaded by the RouteServiceProvider within a group which
    | is assigned the "api" middleware group. Enjoy building your API!
    |
    */

    Route::middleware('auth:api')->get('/user', function (Request $request)                         {
        return $request->user();
    });
    Route::post('/json', 'FormController@post');
    Route::post('/clock', 'PayrollController@index');

它链接到app/Http/controller/PayrollController的控制器的代码。php如下所示:

    <?php

    namespace App\Http\Controllers;


    use GuzzleHttp\Client;
    use App\Company;
    use Response;
    use Illuminate\Support\Facades\App;
    use Illuminate\Support\Facades\DB;
    use Illuminate\Http\Request;
    use Illuminate\Support\Facades\Auth;

    class PayrollController extends Controller
    {

        function __construct()
        {
        }

        public function index()
        {
        }

当我在邮递员执行后,这是我得到的错误:

Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException:  in file /var/www/html/oit_laravel1/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php on line 255
Stack trace:
  1. Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException-&gt;() ...

共有1个答案

雷飞虎
2023-03-14

问题是您在get请求上定义了一个post路由,将请求定义为使用post头,如果使用表单,将方法更改为post,如果不查询数据库,将路由更改为

 Route::get('/clock', 'PayrollController@index');
 类似资料:
  • 我有一个非常简单的Spring引导应用程序,它由以下代码保护: 这个想法是为了保护“admin”部分。它公开了一个RESTAPI。问题是所有的帖子都被退回了 405方法不允许 如果我从应用程序中删除安全启动器,它就会工作。这让我相信安全配置是问题所在。但我不知道怎么做。

  • 我有一个restcontroller和post方法,带有以下url和json请求。http://server/member/sc/v1/limited-liability/medicare 使用post方法和json请求在本地触发请求时,获得正确的响应。但在docker中以spring boot应用程序的形式运行会将异常作为不允许的方法抛出。最初,我将这个docker服务部署为put方法。现在我转

  • 我有以下发帖方法, 我正在使用fiddler发布以下请求, 注意:还没有为spring配置安全性。

  • 问题内容: 我刚刚开始学习Flask,并且我正在尝试创建一种允许POST方法的表单。 这是我的方法: 而我的: 加载表单(在收到GET时将其呈现)可以正常工作。但是,当我单击“ 提交”按钮时,出现一个。 为什么不显示“ Hello”? 问题答案: 除非存在输入错误,否则你的表单将提交给路由方法,除非你输入错误,否则应调整表单的属性以指向视图

  • 我正在使用ajax进行表单更新。当我在ajax中使用GET方法时,它工作得很好,但当我使用Post方法时,它抛出了错误405 method,这是不允许的。我正在本地主机上测试这个。我以前在localhost中做过,效果很好。顺便说一句,我用的是Laravel5.2。 这是我的ajax代码。 这是我在视图中使用的脚本 这是我的路线 当ajax函数和路由中的方法更改为GET时,它会打印在控制台中传递的

  • 关于问题的一些信息: 我使用POST方法创建了guzzle客户端,但它被替换为GET方法。 我尝试在Laravel 7.x上使用,但得到同样的错误。 API服务器是Django Rest Framework。 我得到了405方法不允许的响应。 我的代码使用 guzzle: 我同时使用form_params和json,但仍然得到相同的错误。 然后我使用Laravel 请参见文档,网址:https:/