consume an api or host one?
May 22, 2023
3
Level 28
Laravel API development
I didn't see any laravel API tutorial on Laracast. Any plan for this?
Level 80
@shaungbhone An API is just application routes that return (usually) JSON rather than HTML. So you’d just return your models wrapped in an Eloquent API resource class rather than sending them to a Blade view or whatever:
class PostController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index(): AnonymouseResourceCollection
{
$posts = Post::query()->paginate();
return PostResource::collection($posts);
}
/**
* Store a newly created resource in storage.
*/
public function store(StorePostRequest $request): PostResource
{
$post = Post::query()->create($request->validated());
return new PostResource($post);
}
/**
* Display the specified resource.
*/
public function show(Post $post): PostResource
{
return new PostResource($post);
}
/**
* Update the specified resource in storage.
*/
public function update(UpdatePostRequest $request, Post $post): PostResource
{
$post->update($request->validated());
return new PostResource($post);
}
/**
* Remove the specified resource from storage.
*/
public function destroy(Post $post): Response
{
$post->delete();
return response()->noContent();
}
}
1 like
Please or to participate in this conversation.