Rumah >pembangunan bahagian belakang >tutorial php >Panduan untuk membina API RESTful dengan rangka kerja PHP

Panduan untuk membina API RESTful dengan rangka kerja PHP

WBOY
WBOYasal
2024-06-04 09:32:57514semak imbas

Garis panduan untuk membina API RESTful menggunakan rangka kerja PHP Memilih rangka kerja: Gunakan rangka kerja seperti Laravel, seperti Laravel. Pasang Laravel: Pasang Laravel menggunakan pemasang Laravel. Tentukan laluan: Petakan URL kepada tindakan pengawal dalam route/api.php. Cipta pengawal: Cipta pengawal dalam apl/Http/Pengawal untuk mengendalikan permintaan dan membalas respons. Mengendalikan permintaan dan respons: Gunakan kaedah pembantu seperti response()->json() untuk memudahkan respons dan gunakan kaedah pengawal untuk mengendalikan permintaan. Kes praktikal: API Pengguna: Cipta model, pengawal dan pelancaran API untuk melaksanakan fungsi pengurusan pengguna.

用 PHP 框架构建 RESTful API 的指南

Panduan untuk membina RESTful API dengan rangka kerja PHP

Pengenalan

RESTful API (Representational State Transfer) ialah gaya reka bentuk popular untuk membina API yang mudah digunakan, cekap dan berskala. Artikel ini akan membimbing anda membina API RESTful menggunakan rangka kerja PHP.

Pilih Rangka Kerja

Terdapat banyak rangka kerja PHP tersedia untuk membina API RESTful, termasuk Laravel, Symfony dan Lumen. Artikel ini akan menggunakan Laravel sebagai contoh.

Pasang Laravel

composer global require laravel/installer
laravel new my-api

Tentukan Laluan

Laluan ialah peraturan yang memetakan URL kepada pengawal dan kaedah. Dalam Laravel, anda mentakrifkan laluan API dalam fail routes/api.php. routes/api.php 文件中定义 API 路由。

Route::get('/users', 'UserController@index');
Route::post('/users', 'UserController@store');
Route::get('/users/{user}', 'UserController@show');

创建控制器

控制器处理 API 请求并返回响应。在 Laravel 中,控制器位于 app/Http/Controllers 目录中。

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\User;

class UserController extends Controller
{
    public function index()
    {
        return User::all();
    }

    public function store(Request $request)
    {
        $user = User::create($request->all());

        return response()->json($user, 201);
    }

    public function show(User $user)
    {
        return $user;
    }
}

处理请求和响应

控制器方法处理请求并返回响应。Laravel 提供了各种辅助方法来简化此过程,例如 response()->json() 用于返回 JSON 响应。

实战案例:用户 API

让我们创建一个简单的用户 API 作为实战案例。

创建模型

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    protected $fillable = ['name', 'email'];
}

创建控制器

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\User;

class UserController extends Controller
{
    public function index()
    {
        return User::all();
    }

    public function store(Request $request)
    {
        $user = User::create($request->all());

        return response()->json($user, 201);
    }

    public function show(User $user)
    {
        return $user;
    }
}

启动 API

php artisan serve

现在,您可以使用 cURL 或 Postman 等工具测试 API:

  • 获取所有用户:curl http://localhost:8000/api/users
  • 创建新用户:curl -X POST -d '{"name": "John", "email": "john@example.com"}' http://localhost:8000/api/users
  • 获取特定用户:curl http://localhost:8000/api/users/1rrreee
Buat Pengawal🎜🎜🎜Pengawal mengendalikan permintaan API dan mengembalikan respons. Dalam Laravel, pengawal terletak dalam direktori app/Http/Controllers. 🎜rrreee🎜🎜Mengendalikan permintaan dan respons🎜🎜🎜Kaedah pengawal mengendalikan permintaan dan membalas respons. Laravel menyediakan pelbagai kaedah pembantu untuk memudahkan proses ini, seperti response()->json() untuk mengembalikan respons JSON. 🎜🎜🎜Kes Praktikal: API Pengguna🎜🎜🎜Mari kita cipta API pengguna ringkas sebagai kes praktikal. 🎜🎜🎜Buat model🎜🎜rrreee🎜🎜Buat pengawal🎜🎜rrreee🎜🎜Mulakan API🎜🎜rrreee🎜Kini anda boleh menguji API menggunakan alatan seperti cURL atau G
  • Guru Posmen:
  • curl http://localhost:8000/api/users🎜
  • Buat pengguna baharu: curl -X POST -d '{"name": "John", "email": "john @ example.com"}' http://localhost:8000/api/users🎜
  • Dapatkan pengguna tertentu: curl http://localhost:8000/api/users/1🎜🎜
  • Atas ialah kandungan terperinci Panduan untuk membina API RESTful dengan rangka kerja PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    Kenyataan:
    Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn