graymore2
@graymore2

Почему Laravel Api возвращает html?

Запрос 127.0.0.1:8000/api/posts к Laravel 8 возвращает HTML.

PostsController:
<?php

namespace App\Http\Controllers\Api;

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

class PostsController extends Controller
{
    public function index()
    {
        return Post::all();
    }
}

api
<?php

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\Api\PostsController;

Route::middleware('auth:api')->get('/user', function (Request $request) {
    return $request->user();
});

Route::resource('posts', PostsController::class);

route:list
62c400b6cc42a861332705.png
Ответ:
Скриншот кода удалён модератором.
  • Вопрос задан
  • 121 просмотр
Пригласить эксперта
Ответы на вопрос 3
pLavrenov
@pLavrenov
Разработка сайтов
1) Ты не авторизован
2) Ты не возвращаешь JSON
3) posts не обернут в api middleware

Внимательно почитай документацию там все с примерами.
Ответ написан
@lil_koi
лучший из худших
namespace App\Http\Controllers\Api;

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

class PostsController extends Controller
{
    public function index()
    {
        return responce()->json(Post::get());
    }
}
Ответ написан
JavaDle
@JavaDle
Back-end developer
Route::apiResource('posts, 'PostsController');
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы