如何在 Laravel 中正确地返回 HTTP 状态码

作者: php 发布时间: 2019-08-09 浏览: 3009 次 编辑

file

在 API 中返回状态码是很重要的,因为响应处理程序是工作在 API 的响应状态码之上的。

写 API 时其中有一个重要的地方是更好的处理响应状态码。以前,我一般会使用不常用的 Integer 类型数字作为 HTTP 状态码 。看下面的这个例子:

<?php 
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Post;
Class PostsController extends Controller{
  public function store(){
    $post = new Post(request()->only('title', 'description'));
    request()->user()->posts()->save($post);
    return response()->json(['post' => $post], 201);
    }
}

这个类包含了所有定义的 HTTP 状态码,先来看看其中的一些状态码:

file

虽然我不觉得直接写数值的 HTTP 状态码是一个坏习惯,但是使用
HTTP 状态码时用一些不解自明的命名会更好。大家编码快乐!