我从javascript发送API PUT请求,在一种情况下它可以工作,在另一种情况下它没有。
Request URL: http://project.local/api/contestant
Request Method: PUT
404
Request URL: http://project.local/api/user
Request Method: PUT
200
Route::put('contestant', 'ApiContestantController@store');
Route::put('user', 'ApiUserController@store');
我查了几次routes / api.php,javascript代码很相似,不知道接下来应该检查什么。
编辑:这适用于另一个环境。相同的代码。类似的配置(数据库凭据不同)和文件权限。
我想这是一个简单的拼写错误。确保ApiContestantController.php
文件在app/http/controllers
目录,第一行包含namespace App\Http\Controllers;
,小心A
的首都App
,并且类名必须与文件名相同ApiContestantController
(检查大写字母的文件和类名,它们总是破灭我)。
如果您检查了所有这些并仍然返回错误,请检查您的csrf令牌是否附加在该请求中。要确保它是否与csrf令牌相关,请暂时将方法更改为get
并返回一个简单的字符串并将其记录在控制台中。
告诉我评论中的结果。