Rumah  >  Artikel  >  rangka kerja php  >  Bagaimana untuk menulis antara muka dalam laravel

Bagaimana untuk menulis antara muka dalam laravel

WBOY
WBOYasal
2023-05-26 09:57:07869semak imbas

Dalam pembangunan web, antara muka adalah bahagian yang tidak dapat dielakkan. Rangka kerja Laravel menyediakan cara yang mudah tetapi berkuasa untuk menulis dan mengurus API. Dalam artikel ini, kita akan melihat secara mendalam cara rangka kerja Laravel menulis antara muka.

  1. Apakah itu API?

API merujuk kepada "Antara Muka Pengaturcaraan Aplikasi", yang merupakan spesifikasi untuk komunikasi antara aplikasi dan aplikasi lain. API membolehkan kami membina aplikasi merentas platform, merentas bahasa dan merentas organisasi.

Dalam pembangunan web, API sering digunakan untuk membenarkan halaman web dan aplikasi web mengakses data pada pelayan, atau membenarkan aplikasi web berkomunikasi dengan perkhidmatan pihak ketiga. Oleh itu, pembangun memerlukan cara yang fleksibel dan boleh dipercayai untuk menulis API.

  1. Bagaimanakah Laravel menyokong penulisan API? Ia membolehkan anda menulis API RESTful, kaedah biasa untuk mengakses sumber web menggunakan permintaan HTTP.
API RESTful biasanya berdasarkan protokol HTTP dan boleh mengakses sumber melalui permintaan HTTP (GET, POST, PUT, DELETE). Contohnya, kita boleh menggunakan permintaan GET untuk mengakses data dalam pangkalan data, permintaan POST untuk mencipta sumber baharu, permintaan PUT untuk mengemas kini sumber sedia ada dan permintaan DELETE untuk memadamkan sumber.

Dalam Laravel, kami boleh mentakrifkan permintaan dan respons API melalui penghalaan. Sistem penghalaan Laravel sangat fleksibel dan membolehkan pembangun mentakrifkan laluan API dengan mudah.

Tentukan Laluan API Laravel

  1. Pertama, kita perlu menentukan laluan dalam aplikasi Laravel kami. Laluan mentakrifkan URI sumber API dan tindakan yang harus dilakukan.
Kami boleh mentakrifkan laluan API dengan:

Route::get('/api/users', 'UserController@index');

Kod di atas mentakrifkan laluan yang akan mengakses URI /api/pengguna menggunakan permintaan GET dan akan melaksanakan kaedah indeks.

Jika kita ingin menentukan laluan yang boleh dibuat menggunakan permintaan POST, kita boleh melakukan ini:

Route::post('/api/users', 'UserController@store');

Kod di atas mentakrifkan laluan yang akan mengakses URI /api/ menggunakan POST meminta pengguna dan akan melaksanakan kaedah kedai dalam kelas UserController.

Begitu juga, kami boleh menggunakan permintaan PUT dan DELETE untuk mengemas kini dan memadam data:

Route::put('/api/users/{id}', 'UserController@update');
Route::delete('/api/users/{id}', 'UserController@destroy');

Kod di atas mentakrifkan laluan untuk mengemas kini dan memadam pengguna tunggal menggunakan permintaan PUT dan DELETE, masing-masing.

Menulis Pengawal Laravel

  1. Dalam Laravel, kami boleh menggunakan pengawal untuk mengendalikan penghalaan API. Pengawal ialah kelas PHP yang mengandungi tindakan penghalaan yang kami tentukan.
Sebagai contoh, jika kita ingin menulis pengawal yang mengendalikan penghalaan pengguna API, kita boleh mencipta kelas pengawal yang dipanggil UserController:

namespace AppHttpControllers;

use AppUser;

class UserController extends Controller
{
    public function index()
    {
        $users = User::all();
        return response()->json($users);
    }

    public function store(Request $request)
    {
        $user = new User;
        $user->name = $request->name;
        $user->email = $request->email;
        $user->password = bcrypt($request->password);
        $user->save();
        return response()->json($user);
    }

    public function update(Request $request, $id)
    {
        $user = User::find($id);
        $user->name = $request->name;
        $user->email = $request->email;
        $user->password = bcrypt($request->password);
        $user->save();
        return response()->json($user);
    }

    public function destroy($id)
    {
        $user = User::find($id);
        $user->delete();
        return response()->json(['message' => 'User deleted']);
    }
}

Kod di atas mentakrifkan kelas pengawal yang dipanggil UserController Controller, yang mengandungi kaedah yang berbeza untuk mengendalikan permintaan GET, POST, PUT dan DELETE. Sebagai contoh, kaedah index() akan mendapat semua pengguna, kaedah store() akan mencipta pengguna baharu, kaedah kemas kini() akan mengemas kini pengguna sedia ada dan kaedah destroy() akan memadamkan pengguna sedia ada.

Sediakan perlindungan laluan

  1. Oleh kerana API biasanya hanya dibuka kepada pengguna yang dibenarkan, kami perlu memastikan bahawa laluan API dilindungi. Untuk ini, dalam Laravel kami boleh menggunakan perisian tengah untuk melindungi laluan kami.
Sebagai contoh, kami boleh melindungi laluan API dengan:

Route::group(['middleware' => 'auth:api'], function () {
    Route::get('/api/users', 'UserController@index');
    Route::post('/api/users', 'UserController@store');
    Route::put('/api/users/{id}', 'UserController@update');
    Route::delete('/api/users/{id}', 'UserController@destroy');
});

Kod di atas akan mencipta kumpulan laluan berdasarkan perisian tengah auth:api, yang bermaksud bahawa hanya selepas mengesahkan dengan RESTful API Laluan ini boleh hanya boleh diakses (melalui OAuth, JWT, dll.).

Kembalikan respons JSON

  1. Laravel menyediakan cara yang mudah tetapi berkuasa untuk memberikan respons JSON. Ini biasanya jenis tindak balas lalai untuk pembangunan API.
Sebagai contoh, kita boleh menggunakan kaedah response()->json() dalam kelas UserController untuk mengembalikan data dalam format JSON:

public function index()
{
    $users = User::all();
    return response()->json($users);
}

Kod di atas akan menukar semua butiran pengguna dalam Format JSON dikembalikan.

Pastikan ketersediaan dan kestabilan API melalui ujian

  1. Akhir sekali, kita perlu memastikan ketersediaan dan kestabilan API. Ini memerlukan satu siri ujian, termasuk ujian unit, ujian fungsian, ujian integrasi dan ujian antara muka.
Rangka kerja Laravel menyediakan satu siri alat ujian berkuasa yang boleh membantu kami menjalankan ujian yang berkesan dan memastikan ketersediaan dan kestabilan API.

Kesimpulan

Menulis API melalui rangka kerja Laravel adalah sangat mudah dan berkuasa. Laravel menyediakan beberapa alatan berkuasa untuk mengendalikan penghalaan dan pengawal API, membantu kami membina API berkuasa dengan cepat. Dan, dengan menggunakan alat ujian yang disediakan oleh Laravel, kami boleh memastikan ketersediaan dan kestabilan API.

Sama ada anda menulis API dari awal atau perlu menambah baik dan mengoptimumkan API sedia ada, Laravel ialah rangka kerja yang patut dicuba.

Atas ialah kandungan terperinci Bagaimana untuk menulis antara muka dalam laravel. 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