我正在尝试使用Postman在我的API中发布一个Json,但我收到一个错误:
由于不活动,该页面已过期。
所以,在邮递员中,我正在访问 http://localhost:8000/api/jobs/.在我的"标头"选项卡中,我使用内容类型作为键,使用应用程序/json作为值,并插入以下JSON:
{"title": "PHP Developer / Laravel Expert","description": "Laravel Expert", "local": "São Paulo", "remote": "no", "company_id": "3"}
我正在使用拉拉维尔。这是我的网络.php路由文件:
Route::group(array('prefix' => 'api'), function() {
Route::get('/', function () {
return response()->json(['message' => 'Jobs API', 'status' => 'Connected']);
});
Route::resource('jobs', 'JobsController');
Route::resource('companies', 'CompaniesController');
});
这是我在公司控制器上的存储方法:
public function store(Request $request)
{
$job = new Job();
$job->fill($request->all());
$job->save();
return response()->json($job, 201);
}
我认为您使用的是 laravel 版本> 5.3 而不是在 web 中编写 API 路由.php而是在 api 中编写您的 api 路由.php在路由文件夹中。
拉api.php 文件包含路由服务提供程序放置在 api 中间件组中的路由,该组提供速率限制。这些路由旨在是无状态的,因此通过这些路由进入应用程序的请求旨在通过令牌进行身份验证,并且无法访问会话状态。
拉维尔的路线目录
如果您有 laravel 5.5 并希望从路由中删除该 csrf 保护,那么您可以将其添加到 App\Http\Middleware\VerifyCsrfToken 中的$except = [];
。
不过,您可能希望放置一些其他形式的身份验证。
必须在路由中包含中间件
'middleware' => 'api'