API POST 请求在邮递员和 Laravel 上返回 404 NOT FOUND PAGE
Posted
技术标签:
【中文标题】API POST 请求在邮递员和 Laravel 上返回 404 NOT FOUND PAGE【英文标题】:API POST request returns 404 NOT FOUND PAGE on postman and Laravel 【发布时间】:2021-11-04 05:15:31 【问题描述】:我在 laravel 上创建了这个 api api 路由..
Route::get('/items', [ItemController::class, 'index']);
Route::prefix('/item', function ()
Route::post('/store', [ItemController::class, 'store']);
Route::put('/id', [ItemController::class, 'update']);
Route::delete('/store', [ItemController::class, 'destroy']);
当我在邮递员上使用 GET 请求时,一切正常,但是当我使用 POST 请求时,我得到 404 not Found Page!
这是我在项目控制器上的存储功能
public function store(Request $request)
$newItem = new Item();
$newItem->name = request()->item["name"];
$newItem->save();
return $newItem;
【问题讨论】:
您的路线在语法上不正确。请更新它。 我的路线有什么问题? 为什么要改成图片?路由前缀语法错误:你需要使用->group()
laravel.com/docs/8.x/routing#route-group-prefixes
【参考方案1】:
路由组应该这样写
Route::prefix('item')->group(function ()
Route::post('/store', [ItemController::class , 'store']);
...
);
【讨论】:
我还要补充一点,看看使用 Route::resource(),因为你使用的是典型的 URL,Laravel 可以自动为你添加它们并清理你的路由文件.以上是关于API POST 请求在邮递员和 Laravel 上返回 404 NOT FOUND PAGE的主要内容,如果未能解决你的问题,请参考以下文章
POST 请求适用于 Postman,但不适用于 Guzzle
Laravel POST 路由返回 HTTP 代码 200 但没有创建记录