HAFA

Famindrana ny fanjakana Representational

REST no fanafohezana ny Famindrana ny fanjakana Representational.

Inona ny Famindrana ny fanjakana Representational?

Fomba ara-javakanto ho an'ny fandrafetana fampiharana amin'ny tambajotra. Amin'ny ankamaroan'ny toe-javatra rehetra, dia miankina amin'ny tsy misy fanjakana, client-server, cacheable fifandraisana protocol, ny HTTP protocol. Ny hevitra ao ambadiky ny REST dia ny fitondrana ny loharano rehetra amin'ny lafiny server ho toy ny zavatra azo noforonina, vakiana, havaozina, na fafana amin'ny alàlan'ny asa voafaritra. Ity foto-kevitra ity dia mifanaraka akaiky amin'ny asa mahazatra tohanan'ny HTTP: POST, GET, PUT, ary DELETE.

Nahoana no Antsoina hoe Famindran-panjakana?

Ny fepetra Famindrana ny fanjakana Representational nofidina noho ny antony manokana:

  • Representation ilazana ny fanehoana loharanon-karena (ny antontan-taratasy na ny zavatra nangatahinao tamin'ny mpizara) nafindra tamin'ny tambajotra. Ny mpanjifa dia afaka mitantana mora foana ireo fanehoana ireo amin'ny endrika toy ny XML, JSON, na YAML.
  • Famindrana fanjakana midika fa ny fifandraisan'ny mpanjifa sy ny mpizara tsirairay dia mamindra fanjakana. Rehefa mangataka loharanon-karena ny mpanjifa iray, ny valintenin'ny mpizara dia mamindra amin'ny mpanjifa ny toetry ny loharanon-karena. Ity famindrana fanjakana ity dia mamela ny fampiharana RESTful ho tsy misy fanjakana, midika izany fa ny fangatahana tsirairay avy amin'ny mpanjifa mankany amin'ny server dia tsy maintsy ahitana ny fampahalalana rehetra ilaina mba hahatakarana sy hamitana ny fangatahana. Ny mpizara dia tsy mitahiry fanjakana momba ny fotoam-pivorian'ny mpanjifa amin'ny lafiny mpizara.

Fitsipiky ny REST

Ny REST dia miorina amin'ny fitsipika fototra maromaro izay mamaritra ny fahatsorany sy ny heriny:

  1. tsy misy fanjakana: Ny fangatahana tsirairay avy amin'ny mpanjifa mankany amin'ny mpizara dia tsy maintsy ahitana ny fampahalalana rehetra ilaina mba hahatakarana sy hamenoana ny fangatahana. Tsy manana toetry ny session ny mpizara; tazonina amin'ny lafiny mpanjifa tanteraka izany.
  2. Mpizara-mpanjifa: Interface fanamiana manasaraka ny mpanjifa amin'ny mpizara. Ity fanasarahana ny ahiahy ity dia manohana ny fivoaran'ny tsy miankina amin'ny lojikan'ny mpanjifa sy ny fitehirizana angon-drakitra amin'ny lafiny server, manatsara ny fahafahan'ny fifandraisana amin'ny mpanjifa amin'ny sehatra maro.
  3. azo tehirizina: Ny valiny dia tsy maintsy mamaritra ny tenany ho azo tehirizina na tsy mba hanakanana ny mpanjifa tsy hampiasa angona efa lany na tsy mety ho valin'ny fangatahana fanampiny.
  4. Rafitra misy sosona: Ny mpanjifa dia tsy afaka milaza amin'ny fomba mahazatra raha mifandray mivantana amin'ny mpizara farany izy na amin'ny mpanelanelana. Ny mpizara mpanelanelana dia afaka manatsara ny fizotry ny rafitra amin'ny alàlan'ny fampandehanana ny fifandanjana entana sy ny fanomezana cache iombonana.
  5. Fanamiana Interface: Mba hahazoana ny tombotsoan'ny REST, ny fampiharana dia tsy maintsy mifanaraka amin'ny interface tsara. Mazàna izany dia tafiditra amin'ny fampiasana fomba HTTP manara-penitra amin'ny fomba tsy miovaova sy manaraka URL miompana amin'ny loharanon-karena.

Ohatra PHP

Ny famoronana API RESTful amin'ny PHP dia misy ny fikarakarana ny fangatahana HTTP (GET, POST, PUT, DELETE) ary mamaly amin'ny angona amin'ny endrika toy ny JSON na XML. Ity misy ohatra tsotsotra momba ny API RESTful amin'ny PHP izay mitantana lisitry ny asa. Ity ohatra ity dia mampiseho ny fitantanana ny fangatahana GET sy POST amin'ny fahatsorana.

izany PHP ohatra dia hampiseho aminao ny fomba hamoronana teboka roa: ny iray amin'ny famerenana ny lisitry ny asa (GET /tasks) ary ny iray hafa hanampiana asa vaovao (POST /tasks).

index.php - Ny teboka fidirana

<?php
// Define a simple array of tasks as our "database"
$tasks = [
    ['id' => 1, 'title' => 'Buy groceries', 'completed' => false],
    ['id' => 2, 'title' => 'Finish homework', 'completed' => false]
];

// Get the request method
$requestMethod = $_SERVER['REQUEST_METHOD'];

// Simple router
switch ($requestMethod) {
    case 'GET':
        getTasks();
        break;
    case 'POST':
        addTask();
        break;
    default:
        // Handle other HTTP methods or return an error
        header('HTTP/1.1 405 Method Not Allowed');
        break;
}

function getTasks() {
    global $tasks;
    header('Content-Type: application/json');
    echo json_encode($tasks);
}

function addTask() {
    global $tasks;
    $input = json_decode(file_get_contents('php://input'), true);
    if (!isset($input['title']) || !isset($input['completed'])) {
        header('HTTP/1.1 400 Bad Request');
        echo json_encode(['message' => 'Missing title or completed status']);
        return;
    }

    $newTask = [
        'id' => end($tasks)['id'] + 1,
        'title' => $input['title'],
        'completed' => $input['completed']
    ];

    $tasks[] = $newTask;
    header('Content-Type: application/json');
    echo json_encode($newTask);
}

?>

Ny fomba fiasan'izy

  • Ity script ity dia miasa toy ny teboka faran'ny API tsotra. Miankina amin'ny fomba fangatahana HTTP, na mamerina lisitry ny asa (GET) na manampy asa vaovao amin'ny lisitra (POST).
  • Fa GET fangatahana, dia mamoaka fotsiny ny $tasks array amin'ny format JSON.
  • Fa POST fangatahana, mamaky ny karama JSON avy amin'ny vatana fangatahana (heverina fa misy title ary completed status), manampy asa vaovao amin'ny $tasks array, ary mamerina ny asa vaovao ho JSON.
  • Ity ohatra ity dia mampiasa ny PHP global array ho toy ny angona maneso. Amin'ny fampiharana tena izy dia mety hifanerasera amin'ny angon-drakitra ianao hitahiry sy haka asa.

Fitsapana ny API

Azonao atao ny manandrana ity API ity amin'ny fampiasana fitaovana toy ny Postman na cURL. Ohatra, manampy asa vaovao:

curl -X POST -H "Content-Type: application/json" -d '{"title":"Learn REST","completed":false}' http://localhost/index.php

Ary mba hahazoana ny lisitry ny asa:

curl -X GET http://localhost/index.php

Ity dia ohatra tena fototra natao hanehoana ny foto-kevitry ny RESTful API amin'ny PHP. Ny toe-javatra tena izy dia mitaky fitakiana matanjaka kokoa amin'ny fangatahana, fitantanana ny hadisoana, ary fiheverana fiarovana toy ny fanamarinana sy fanamarinana ny fampidirana.

  • fanafohezana: HAFA
Miverina amin'ny bokotra ambony
akaiky

Adblock hita

Martech Zone dia afaka manome anao ity votoaty ity tsy misy vidiny satria ataonay vola ny tranokalanay amin'ny alàlan'ny fidiram-bolan'ny doka, ny rohy mifandray, ary ny fanohanana. Mankasitraka izahay raha esorinao ny fanakanana dokao rehefa mijery ny tranokalanay ianao.