在 laravel 6.x 中获取 404

Getting 404 in laravel 6.x

我在 App\Http\Controllers\Api\v1

中创建了 ApiController

还使用 laravel/ui

创建了 auth

为前端完美运行的默认创建函数。

但问题是尝试调用 ApiController

我的API Route文件如下

Route::group(['prefix' => 'api/v1', 'namespace' => 'Api\v1'], function () {
  Route::post('register', 'ApiController@register');
});

我的 API 控制器看起来像

namespace App\Http\Controllers\Api\v1;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;

class ApiController extends Controller
{
    public function register(array $data)
    {
        return User::create([
            'name' => $data['name'],
            'email' => $data['email'],
            'password' => Hash::make($data['password']),
            'api_token' => Str::random(60),
        ]);
    }
}

在 404 之前是 csrf 错误,我已经通过

解决了它
protected $except = [
        '/register',
    ];

Http\Middleware\VerifyCsrfToken

两道题我想不通

  1. 如何 except 我的整个 api 使用 CSRF 调用 $除了..

  2. How to solve 404 for register method , 我使用邮递员 POST 请求并调用 URL http://localhost/larablog/api/v1/register

routes/api.php 文件中定义的路由由 RouteServiceProvider 嵌套在路由组中。在此组中,/api URI 前缀会自动应用,因此您无需手动将其应用到文件中的每个路由。您可以通过修改 RouteServiceProvider class.

来修改前缀和其他路由组选项

1) 404 错误:- 从 前缀路由 .

中删除 api
Route::group(['prefix' => 'v1', 'namespace' => 'Api\v1'], function () {
  Route::post('register', 'ApiController@register');
});

http://localhost/larablog/api/v1/register

1。如果您使用的是路由组:

Route::group(['prefix' => 'v1', 'namespace' => 'Api\v1'], function () {
  Route::post('register', 'ApiController@register');
});

您的 $except 数组如下所示:

protected $except = ['v1/register'];

2。如果要排除v1

下的所有路由

您的 $except 数组如下所示:

protected $except = ['v1/*'];